Go 尚不支持动态库。Elias Naur 最近发布了一些补丁,但它们尚未经过审核,它们不太可能包含在 Go 1.2 中。您可以阅读 Google Groups 上的讨论:https://groups.google.com/d/topic/golang-nuts/o0VTTqC8hOU/discussionhttps://groups.google.com/d/topic/golang-nuts/P05BDjLcQ5k/discussion据我所知,这是关于该主题的最新讨论。然而,还有另一种方法。您可以在单独的进程中启动您的插件,并使用net/rpc包与您的主应用程序进行通信。这也允许您动态启动/停止/重新编译单独的插件,它的优点是坏插件不会使您的程序崩溃。Go 擅长网络通信,你只需要好好利用它。我需要编辑程序并重新编译,您还可以考虑编写一个小脚本来监视当前目录中的更改(使用 fsnotify)并执行“go build”,然后重新启动程序。我在本地开发期间在我的一些 Web 项目中使用了这种方法,并且效果很好。我无法观察到任何编译时间,而且我切换和刷新浏览器窗口的速度非常快。与 Go 相比,我的 Python 开发周期必须重新启动解释器,并且必须在每次更改时重新导入所有模块(这在较大的项目中可能需要花费大量时间!)。