场景如下:
已经编译好主程序。main.exe. 解析不同文件的。
后来有了新格式文件,编写了新的解析插件:plug1.exe.main.exe 根据获取的参数调用 plug1.exe 解析。
上面这样是目前想到的,有常规合理的解决办法吗?
|  |      1index90      2019-06-27 11:05:02 +08:00  1 你想问 Go 能不能使用动态链接库吧?据我所知貌似不能。 但应该有办法,例如 plug1.exe 实现 unix socket 接口,然后 main.exe 去调。 | 
|  |      2z0ne      2019-06-27 11:10:16 +08:00 via iPhone  2 Go 是可以编译和调用链接库的 动态 /静态 但是只能在 unix 系上用,比如 linux 和 macOS,可以编译成.so 文件,不能编译成 dll go build -buildmode=plugin plugin.go 具体代码可以搜索,很多参考资料 | 
|  |      4misaka19000      2019-06-27 11:12:28 +08:00 提供一个思路,用 lua 来实现解析的操作 | 
|      6zarte OP @misaka19000 那样又多了一个技术栈了 | 
|      7zarte OP @misaka19000 不过比我想的方法好点 | 
|  |      8janxin      2019-06-27 11:33:02 +08:00 hashicorp/go-plugin 可以看一下 Go 暂时没有后续支持动态链接库,最好也不要用这种方式。 | 
|  |      9dbskcnc      2019-06-27 11:36:56 +08:00 | 
|      10Mitt      2019-06-28 04:11:31 +08:00 via iPhone go build -buildmode=c-shared |