Ubuntu install Go environnement de développement de langage

alentours

VMware 15.0
Ubuntu 18.04

Première étape de l'installation

Utilisez l'outil de gestion des packages système pour installer, il peut y avoir des anomalies ici, suivez simplement les invites du système.

sudo apt-get install golang

Testez si l'installation est réussie et vérifiez la version

go version

version

Deuxième étape: créer un espace de travail

Le code Go doit être placé dans l'espace de travail. C'est en fait un répertoire, qui contient trois sous-répertoires:

  1. Le répertoire src contient les fichiers source Go, qui sont organisés en packages (chaque répertoire correspond à un package)
  2. Le répertoire pkg contient des objets de package
  3. le répertoire bin contient des commandes exécutables

Par conséquent, nous devons créer un répertoire d'espace de travail et définir le GOPATH correspondant. L'espace de travail peut être placé n'importe où, ici est placé dans le répertoire personnel.

kangze@kangze:/$ mkdir $HOME/kangze/gopath

Ensuite, créez trois sous-répertoires src pkg bin dans ce répertoire

mkdir src pkg bin

Étape 3 Définir les variables d'environnement

export GOPATH=$HOME/kangze/gopath
export PATH=$PATH:$GOPATH/bin

Effectuez cette configuration:

source ~/.bashrc

Vérifiez la configuration

$ go env

alentours
Comme vous pouvez le voir, GOPATH a maintenant été modifié.

Créez Hello world!

Après avoir créé un espace de travail et défini des variables d'environnement, suivez la pratique habituelle pour apprendre une langue, en commençant généralement par Hello World. Afin de terminer ce travail de création d'époque, nous créons d'abord un répertoire de code source.

$ mkdir $GOPATH/src/gihub.com/gitee-user/hello -p

Utilisez vscode pour créer hello.go (vscode peut être téléchargé dans le centre d'applications Ubuntu)
Insérez la description de l'image ici
Créez un fichier hello.go dans le répertoire du code source et écrivez-y le code suivant.

package main

import "fmt"

func main() {
    
    
    fmt.Printf("Hello World!\n")
}

courir:

$ go run hello.go

res

Installez les plugins nécessaires

Installez Git

sudo apt-get install git

Quelques outils pour installer go

Lien de référence https://github.com/northbright/Notes/blob/master/Golang/china/get-golang-packages-on-golang-org-in-china.md .

Télécharger le code source en local

Étant donné que Golang.org n'est pas accessible dans l'environnement réseau chinois, il est différent de l'exécution

go get golang.org/x/tools/...

Pour obtenir les packages Golang.
Par conséquent, vous pouvez utiliser le miroir sur github pour obtenir le code. Créez d'abord un sous-répertoire sous le répertoire GOPATH

mkdir -p $GOPATH/src/golang.org/x/

Télécharger le code source

go get -d github.com/golang/tools

Déplacer les outils vers le répertoire créé lors de la première étape

cp $GOPATH/src/github.com/golang/tools $GOPATH/src/golang.org/x/ -rf

Kit d'installation

go install golang.org/x/tools/go/buildutil

Fermez vscode, rouvrez-le et installez-le lorsque vous y êtes invité.
Insérez la description de l'image ici

Installez et exécutez Hello World

Exécutez la commande suivante

go install github.com/github-user/hello

Cette commande générera un fichier binaire et installera le fichier binaire dans le répertoire bin. Entrez hello pour exécuter.
courir

Installer et exécuter go tour

Reportez-vous à https://github.com/Go-zh/tour .

go get github.com/Go-zh/tour/gotour
gotour

Les résultats sont les suivants:
Insérez la description de l'image ici

Mon premier package et test

Ecrire une bibliothèque et un programme pour l'utiliser. Sélectionnez d'abord le chemin du package et créez le répertoire du package:

mkdir $GOPATH/src/github.com/github-user/stringutil

Ensuite, créez un fichier nommé reverse.go dans ce répertoire avec le contenu suivant:

// stringutil 包含有用于处理字符串的工具函数。
package stringutil

// Reverse 将其实参字符串以符文为单位左右反转。
func Reverse(s string) string {
    
    
	r := []rune(s)
	for i, j := 0, len(r)-1; i < len(r)/2; i, j = i+1, j-1 {
    
    
		r[i], r[j] = r[j], r[i]
	}
	return string(r)
}

Utilisez maintenant la commande go build pour tester la compilation du package:

$ go build github.com/github-user/stringutil

Insérez la description de l'image ici
Après avoir confirmé que le package stringutil est construit, modifiez le fichier hello.go d'origine (il se trouve dans $ GOPATH / src / github.com / github-user / hello) pour l'utiliser:

package main

import (
	"fmt"

	"github.com/github-user/stringutil"
)

func main() {
    
    
	fmt.Printf(stringutil.Reverse("!oG ,olleH"))
}

par

go install github.com/github-user/hello

Pour installer le package stringutil.
Exécutez la nouvelle version de ce programme.

hello

Insérez la description de l'image ici

tester

Go dispose d'un cadre de test léger, qui comprend la commande go test et le package de test.

Vous pouvez écrire un test en créant un fichier dont le nom se termine par _test.go et contient des fonctions nommées TestXXX et signées func (t * testing.T). Le framework de test exécutera chacune de ces fonctions; si la fonction appelle une fonction qui indique un échec telle que t.Error ou t.Fail, le test indique un échec.

Nous pouvons ajouter un test pour stringutil en créant le fichier $ GOPATH / src / github.com / github-user / stringutil / reverse_test.go, le contenu est le suivant:

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)
		}
	}
}

Ensuite, utilisez go test pour exécuter le test

go test github.com/github-user/stringutil

Insérez la description de l'image ici

Résumé du problème

Au début, lors de la création d'un espace de travail, un chemin en moins était écrit lors de la configuration des variables d'environnement.

(错误)export GOPATH=$home/gopath
(正确)export GOPATH=$home/kangze/gopath

Faire échouer les opérations suivantes.

Liens connexes

https://go-zh.org/doc/code.html .

Je suppose que tu aimes

Origine blog.csdn.net/weixin_43847600/article/details/108561501
conseillé
Classement