【发布时间】:2013-09-30 19:36:28
【问题描述】:
我无法让我的 golang prog 通过 upstart 运行。
这是我的项目目录--
/go
/src
/print.io
/geo
main.go
/geodomain
[.. files ..]
我的 gopath 设置为上面的 /go 目录。
在/geo 文件夹中,我可以运行go run main.go,它可以工作。
但是,使用以下新贵配置,其日志记录 main.go:8:2: import "print.io/geodomain": cannot find package--
为什么它不像我手动运行命令时那样从新贵开始工作?
description "go-server"
author "micah smith"
start on (net-device-up
and local-filesystems
and runlevel [2345])
stop on runlevel [!2345]
respawn
script
chdir ~/go/src/print.io/geo/
exec go run main.go
end script
【问题讨论】:
-
cd 到
geo目录然后运行go run main.go是否有效? -
@deft_code 是的
-
是否有可能,当通过 Upstart 调用时,
GOPATH未设置?尝试编译您的程序 (go build) 并将其放在您的普通PATH上。 -
@SashaCrofter 就是这样!疯狂的奇怪
-
不幸的是,必须非常小心 Go 周围的环境变量,所以我不久前停止使用
go run,只编译我希望使用的所有内容。我将重新提交我的评论作为答案,因此可以将问题标记为已回答。
标签: go ubuntu-12.04 upstart