假如我用go写了几个函数,我想把这几个函数发布给别人,在他们的go代码中调用,但是我不想把源码给他,怎么办,有办法吗?能否像c或者java那样打包成库?
有疑问加站长微信联系(非本文作者)
![](https://static.golangjob.cn/static/img/footer.png?imageView2/2/w/280)
假如我用go写了几个函数,我想把这几个函数发布给别人,在他们的go代码中调用,但是我不想把源码给他,怎么办,有办法吗?能否像c或者java那样打包成库?
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
`单行代码`
搞接口嘛,开个端口给他调用,让他发get/post请求进行调用
好像可以打包为c库
打包成.so动态库也可以
简单,做一个rpc调用即可
打包成动态库 dll/so,build好像有cshare mode参数
如果只是给golang调用的话,可以参考【golang 生成 shared object 供其他语言使用#plug 模式】
-buildmode=plugin Build the listed main packages, plus all packages that they import, into a Go plugin. Packages not named main are ignored.
也做成命令行工具,通过命令行调用
go build的c库好像会把runtime也打包进去 没有深究过