当我使用命令" go.exe run main.go"运行以下代码时,该程序不会在屏幕上显示文本或退出。

go.exe版本= go版本go.1.5.1 Windows / amd64

设置GOARCH = 386

设置GOBIN =

设置GOEXE = .exe

设置GOHOSTARCH = 386

设置GOHOSTOS = windows

设置GOOS = windows

设置GOPATH = C:\ project

设置GORACE =

设置GOROOT = C:\ Go

设置GOTOOLDIR = C:\ Go \ pkg \ tool \ windows_386

设置GO15VENDOREXPERIMENT =

设置CC = gcc

设置GOGCCFLAGS = -m32 -mthreads -fmessage-length = 0

设置CXX = g ++

设置CGO_ENABLED = 1

任何想法有什么问题吗?

谢谢

我尝试卸载Windows / amd64版本并安装Windows / 386无济于事。它安装在c:\ Go中,并且设置了PATH。我正在使用Windows 10。

换行

以下内容也不会打印到命令提示符。

下面给出了错误"已导入但未使用fmt",因此它必须在执行某些操作。

GOROOT设置为C:\ Go \

路径:C:\ Go \ bin

该图显示了我如何运行程序

更新图片

我在Windows 10系统上遇到了同样的问题。运行go run main.go不会打印任何内容,而go build main.go后跟.\\main.exe则可以正常工作并打印出" hello,world"。

该问题是由于Comodo防病毒软件隔离了go.exe进程作为其自动包含功能的一部分。我相信go run命令会编译并尝试将main.go的可执行二进制代码加载到同一进程中,这将触发"自动包含"以隔离应用程序的输出。

最初的解决方法是通过Comodo Antivirus设置禁用"自动包含"。禁用此功能后,go run main.go开始正常工作。

永久性解决方法是为go.exe可执行文件添加"忽略"规则。这样可以启用"自动包含"功能,但go run可以正常工作。

创建一个名为?/ sample的文件夹(其中?表示您的主目录)
在终端上,您可以通过输入以下命令来执行此操作:

下面的程序用于Hello World显示

将其另存为main.go到我们刚刚创建的文件夹中。
打开一个新终端,然后输入以下内容: