2016-04-04 13 views
1

私は同様の問題を抱えたインターネットを知っていますが、私はすべての解決策を試しましたが、少なくとも2日間は分かりません。"go build。/ ..."はパッケージを見つけることができません

私は、それが/構築私のコードを実行することができます私はのIntelliJ IDEAを使用して、それは素晴らしい作品少し行くサーバーを展開しようとしているが、私は一例として、端末を使用している場合

go build ./... 

が、私はそのようなものを参照してください。

OS-X-Dennis:backend denis$ go build ./... 
out/production/mypocket_backend/server.go:4:2: cannot find package "api.jwt.auth/routers" in any of: 
     /usr/local/go/src/api.jwt.auth/routers (from $GOROOT) 
     /Users/denis/Programming/Golang/src/api.jwt.auth/routers (from $GOPATH) 

OS X 10.11.2、のIntelliJ IDEA 2016.1
$ GOPATH = "ユーザ/デニス/プログラミング/ Golang"
$ GOROOT = "は/ usr/local /行く"
$ PATH = "$ PATH:$ GOPATH/bin"
これらのパスは正しいですか?ここで

は、私の仕事の構造である:ここで

​​

はメインファイルと、プロジェクト全体構造の私の画面です: enter image description here

私はログが私に私のプロジェクトへの間違ったパスを示していることがわかります。

now 
/Users/denis/Programming/Golang/src/api.jwt.auth/routers 
should 
/Users/denis/Programming/Golang/src/backend/src/api.jwt.auth/routers 

このパスを修正する必要があるかどうかわかりません。

+0

です。バックエンドフォルダはプロジェクトのソースですか、それとも何ですか?プロジェクトに含まれるすべてのパッケージは、GOPATHのsrcフォルダにある必要があります。あなたのフォルダ構造はローカルではあなたのサーバ上にあるものとは異なると私は思います – tier1

+0

'api.jwt.auth'パッケージをどうやってインポートしますか?私はあなたが正しく輸入していないという強い感情を持っています。 – nevets

+0

これは、 'api.jwt.auth'ではなく' import "backend/src/api.jwt.auth" 'でなければなりません。 – nevets

答えて

1

GOPATHには、複数のディレクトリを設定できます。

あなたは本当に/Users/denis/Programming/Golangの既存のパスに加えて、あなたがあなたのGOPATHを設定することができ、あなたのbackendディレクトリが囲碁ライブラリのいくつかのパスになりたい場合:これは、import文が検索するようになります/Users/denis/Programming/Golang:/Users/denis/Programming/Golang/src/backend

/Users/denis/Programming/Golang/srcディレクトリと/Users/denis/Programming/Golang/src/backend/srcディレクトリの両方のソースファイル。

あなたのソースをすべて1つの領域に保存するには、api.jwt.authフォルダを/Users/denis/Programming/Golang/src/api.jwt.authに移動することをおすすめしますが、上記のようにGOPATH内に2つの異なるディレクトリを設定することもできます。

GOPATHをよりよく理解するには、go help gopathと入力するだけです。また、クイックスタートはhere

+0

GOPATHの2つのパスを使ってアプローチしてくれてありがとうございました!上記のようにソースコードを移動すると、それを行うのが悪い習慣ですか? –

+0

私は悪い習慣ではないと思います。 –

関連する問題