実験:Golang開発環境をインストールする
【ラボ環境】
Ubuntu 18.04.4
【実験内容】
【実験手順】
-
実験環境の
セットアップこの実験では、後続の実験の環境として、VirtualBoxにオペレーティングシステムUbuntu 18.04.4を備えた仮想マシンを作成します。その中でも、ミラーダウンロードは清華大学のオープンソースソフトウェアミラーステーションに転送できます。 -
VSCodeをインストールするには、LinuxシステムへのVSCode(Visual Studio Code)のインストール
を参照してください。 -
golangのインストールGo
の公式のミラーサイトにアクセスして、Linuxバージョンのgolang をダウンロードします。
# 这一步需要切换为超级用户进行
# tar xzvf 下载路径/go1.15.1.linux-amd64.tar.gz -C 指定解压路径
sudo tar xzvf /home/sherry/Downloads/go1.15.1.linux-amd64.tar.gz -C /usr/local
- ワークスペースを作成します。
mkdir $HOME/gowork
- $ HOME / .profileファイルを開き、最後に次の2行を追加します。
export GOPATH=$HOME/gowork
export PATH=$PATH:$GOPATH/bin
- 環境変数の設定を有効にします。
source $HOME/.profile
- コマンドラインウィンドウに「go env」と入力して、構成を確認します。
- 最初の囲碁プログラムを書く
- ソースコードディレクトリを作成する
# mkdir $GOPATH/src/github.com/user_name/hello -p
mkdir $GOPATH/src/github.com/sherryjw/hello -p
- hello.goを作成して書き込みます。
package main
import "fmt"
func main() {
fmt.Printf("hello, world\n")
}
- 実行:
- 必要なツールとプラグインをインストールする
- Gitクライアントをインストールする
sudo apt-get install git
-
gitのインストールを確認します。gitのバージョンを確認できます。
-
go関連ツールをインストールする
golang.orgには直接アクセスできないため、githubのミラーを使用してインストールする必要があります。手順は次のとおりです:
①。ローカルでソースコードをダウンロードします:
注:この手順をコースのホームページに従って実行すると、エラーが発生する場合があります。
mkdir $GOPATH/src/golang.org/x -p
cd $GOPATH/src/golang.org/x
git clone https://github.com/golang/tools.git
②。取り付けキット:
go install $GOPATH/src/golang.org/x/tools/go/buildutil
③。VSCodeを終了して再度入力し、プロンプトに従ってインストールし、VSCodeでhello.goを実行します。
④。現在のGoワークスペースのディレクトリ構造を表示します。これは公式ドキュメントGoプログラミングワークスペースの使用方法と一致している必要があります。
⑤。hello worldをインストールして実行します。
go install github.com/github-user/hello
hello
- ゴーツアーをインストールして実行する
注:コースのホームページをフォローすると、この手順が失敗する可能性があります。
プロキシを設定します。
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
https://tour.golang.org/のオフラインバージョンを取得します。
go get golang.org/x/tour
この時点で取得したツアーパッケージは$ GOPATH / pkg / mod / golang.org / xディレクトリに配置され、$ GOPATH / src / golang.org / xディレクトリに転送して名前をtourに変更する必要があります。
cp $GOPATH/pkg/mod/golang.org/x/[email protected] $GOPATH/src/golang.org/x/tour -rf
実行:
tour
コンソールが自動的にブラウザーを開き
ます。GoTourにオフラインでアクセスできるようになりました。
- 最初のカスタムパッケージを作成する
- パッケージディレクトリを作成します。
mkdir $GOPATH/src/github.com/user/stringutil
-
このディレクトリにreverse.goという名前のファイルを作成し、次の内容を含めます。
-
go buildコマンドを使用して、パッケージのコンパイルをテストします。
go build github.com/user/stringutil
-
stringutilパッケージがビルドされたことを確認したら、カスタマイズされたパッケージを参照するように元のhello.goファイルを変更します。
-
helloプログラムをインストールすると、この時点でstringutilパッケージも自動的にインストールされます。
go install github.com/user/hello
- 実行:
カスタマイズされたパッケージを実装すると、目的の効果が得られることがわかります。
- 最初のテスト
stringutilのテストを追加するには、ファイル$ GOPATH / src / github.com / user / stringutil / reverse_test.goを作成します。その内容は次のとおりです。
package stringutil
import "testing"
func TestReverse(t *testing.T) {
cases := []struct {
in, want string
}{
{
"Hello, world", "dlrow ,olleH"},
{
"Hello, 世界", "界世 ,olleH"},
{
"", ""},
}
for _, c := range cases {
got := Reverse(c.in)
if got != c.want {
t.Errorf("Reverse(%q) == %q, want %q", c.in, got, c.want)
}
}
}
次に、go testを使用してテストを実行します。
【実験概要】
この実験は主に、go言語開発環境と簡単な入門的な使用法を完成させます。
-
go toolsのソースコードをダウンロードすると、次の状況が発生し
ました。当面は問題の原因が見つからなかったため、対応するgithubライブラリから直接ダウンロードすることにしました。
-
gotourをインストールできませんでした:
コースのWebサイトの手順に従ってgetourを実行すると、次の問題が発生しました:
ブログサービスの計算によると、CentOSでGo開発環境をインストールするときに発生したいくつかの問題によると、githubのウェアハウスが維持されておらず、ビットバケットが内部に記載されている可能性がありますそれも404を取得し、はしごを持っていなかった、この手順はしばらくの間不可能でした。
その後、Goスキル共有:Go国内アクセラレートミラーリング、Goスキル共有:Goのツアー(中国語を含む)がローカルにインストールされ、問題を解決するために国内エージェントが設定されました。実際、goツールをインストールするときにプロキシを設定しようとしましたが、その時点で特定の方法がわからなかったため、他の方法を使用しました。
【参考資料】
golangインストールガイド(中国語版)
Go
get golang.org/xパッケージ障害サービスの計算を解決するために最初からGo言語開発環境を構築-CentOS
にGo開発環境をインストールするときに発生するいくつかの問題