プログラム-golangスポンサーリンク※2017年12月25日追記depは常に進化を続けているので、この記事に書いてある情報は古い可能性があります。最新の情報はgithubを御覧ください。tool本文はここからこんにちは、つじたく(@Tsuji_Taku50)です。tsujitaku50.hatenablog.comgolangが公式で出したパッケージ依存解決ツール「dep」を使おうとしたら、なんと使えませんでした!でも新しく出たものは使いたかったので、あれから色々試していました。するとdepが使えるようになりました!(感激)ただ、なんでこの対応で使えるようになったか分からないんですよね。それでも、一応僕のやったこと(そんな大層なことはしてないですが)を書いておきます。大したことはしていなくて、僕が実際に行った作業は1つでGOPATHの中にプロジェクトを作成したということだけです。今まで、GOPAHTの外にプロジェクトを作成していました。理由はないのですがなんとなくGOPATHの中にプロジェクトを作るのが気持ち悪かったからです。今回depが使えるようになるまで試行錯誤しているなかで、たまたまGOPAHTに中にプロジェクトを作ってdepコマンドを使ってみたら使用できるようになりました。いうわけで使っていきましょう。depコマンド2017/02/24現在、depコマンドには以下のコマンドが存在するようです。今後増えるか減るかするかもしれません。パッケージを削除したいときに実行するコマンド実際に試してみましたinit&ensureしてみるまずはGOPAHTの中にプロジェクトを作成します。-updateコマンドを実行します。-updateすると、lock.jsonとmanifest.jsonとvendorディレクトリが作成されるようです。vendorそれぞれ中身を見てみます。[]}manifest.json{}vendorディレクトリには、何も存在していませんでした。lock.jsonのmemoに書かれている値は現時点でのパッケージ依存状態を表しているのでしょうか?パッケージを新しくインストールしたり、バージョンアップデートすると、このファイルに書き込まれるのだろうと予想しています。パッケージをダウンロードしてみる試しにmain.goにこんなコードを書いてみました。ensureコマンドを実行するとパッケージにダウンロードを行ってくれるはずです。ダウンロード対象はgithub.com/google/go-github/githubパッケージです。-updateというupdateオプションを使用します。-updatelock.jsonとmainfest.jsonとvendorディレクトリを見てみます。go-querystring/依存関係情報が、lock.jsonに書き込まれてるようです。vendorディレクトリ以下にもパッケージがダウンロードされていますね!ただ、manifest.jsonには何も書き込まれていないのですがこれはいったい。GitHubなるほど。initコマンドからやり直すとmanifest.jsonにも情報が書き込まれていました。最後にダウンロードしたパッケージを削除してみましょう。override)おお!使用中のパッケージを削除しようとするとエラーになるようです。いうわけでgo-githubパッケージの使用を止めました。[]}manifest.json{}vendorディレクトリ以下のパッケージも全て削除されていました。簡単に削除できました!まとめ他にも細かいオプションなどがあるんですが、これまでの操作で一通りdepを使えるようになるんじゃないかなと思います。公式にもDepは公式のツールではありません。Goチームによって(まだ)祝福されていないと書いてあるようにまだまだ不安定なようです。遊びや個人プロジェクトで使うときには良いと思いますが、チームで使うときは少しためらいますね。個人で使ってみようかと思います!OSSなので貢献してみようかと考え中です。...2017-04-26goxのクロスコンパイルでビルド時にエラーが表示されて少しハマったこんにちは、つじたく(@Tsuji_Taku50)です。東京都内でエンジニアをしています。自分の好きな音楽とか雑記とかエンジニアっぽい内容を好きなように書く場所です。IDEAでGithubのPullRequestが確認できるようになって超便利ビットコイン等の仮想通貨が届かない?送金履歴を確認してみよう。reserved.スターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。