Ubuntu 如何设置特定的GOPATH?

Ubuntu 如何设置特定的GOPATH?,ubuntu,go,ubuntu-12.04,Ubuntu,Go,Ubuntu 12.04,我用ubuntu软件包安装了go。 基础库(fmt等)工作正常 但我在/var/www/mygoproject中有一个真正的项目,有多个子文件夹,例如: /子文件夹1 /lib1 /lib2 /子文件夹2 子文件夹X包含不同的go应用程序,而libX包含共享代码 我想,在子文件夹X中使用 导入“lib1/包内” 但是我总是得到导入的和未使用的错误 我该怎么办 编辑: 代码/var/www/project/subproject/folder/alpha.go package main im

我用ubuntu软件包安装了go。 基础库(fmt等)工作正常

但我在/var/www/mygoproject中有一个真正的项目,有多个子文件夹,例如:

  • /子文件夹1
  • /lib1
  • /lib2
  • /子文件夹2
子文件夹X包含不同的go应用程序,而libX包含共享代码

我想,在子文件夹X中使用 导入“lib1/包内” 但是我总是得到导入的
和未使用的
错误

我该怎么办


编辑: 代码/var/www/project/subproject/folder/alpha.go

package main

import (
    "subprojectA/folder/apackage" //doesnt work
    "./apackage" //works but not the cleanest
)

func main() {

    var sr interface{}
    sr = "tmp"

    apackage.Run(sr)
}

在第一种近似情况下,go构建系统通过在目录
$GOPATH/src/pth
中查找名为
$(basename pth)
的包来解析导入路径
pth

在我看来,您缺少了
/src/
部分


可以找到关于GOPATH的有用讨论,例如,另一个

我认为我可以避开/src/部分,但似乎我不能。我使用/src/和/pkg/子文件夹重建文件夹,并将所有代码放入/src/。那就行了