登录
首页 >  Golang >  Go问答

重构您的编辑软件,GoLand为何每次调试时都会进行重建,并提供解决方案

来源:stackoverflow

时间:2024-03-21 10:09:32 167浏览 收藏

当在 GoLand 中调试代码时,即使代码未发生更改,它也会重新编译。这是由于 Go 编译器需要重新编译代码以确保构建没有任何更改。虽然在 Go 1.10 中引入的编译器缓存可以加速此过程,但由于编译器无法访问外部资源,因此无法判断构建是否确实没有任何更改。因此,IDE 会先调用编译器,然后启动调试过程。

问题内容

当在GoLand中按下“运行”按钮时,即使代码没有任何更改,它也会重新编译代码,为什么?


解决方案


这是由 Go 编译器完成的,如果没有任何改变,它应该非常快,这要归功于 Go 1.10 中引入的编译器缓存。

需要重新编译步骤的原因很简单:没有简单的方法可以判断构建中是否确实没有任何更改,因为编译器无法访问的外部资源可能会影响结果。

因此,IDE 首先调用编译器,然后启动调试过程。

更好的问题是:您想做什么以及为什么在这种情况下重新编译会出现问题?

今天关于《重构您的编辑软件,GoLand为何每次调试时都会进行重建,并提供解决方案》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>