go gestion des packages (bibliothèque)

Cet article suit toujours la dernière version, donc le contenu obsolète sera supprimé. Si vous le trouvez obsolète, veuillez me contacter si vous le pouvez.

aller mod

Le contenu suivant a été intégré à Goland, afin que les frères qui utilisent Goland puissent écrirego mod tidy

Présentation des modules Go

go modules est une nouvelle fonctionnalité de golang 1.11, qui est utilisée pour gérer les dépendances des packages dans les modules .

Comment utiliser le mod go

  • Initialiser le modulego mod init <项目模块名称>
  • Gestion des dépendances, selon le fichier go.modgo mod tidy
  • Copiez le package de dépendance dans le répertoire du fournisseur sous le projet. go mod vendor Si le paquet est bloqué (wall), vous pouvez utiliser cette commande puis utiliser go build -mod=vendor pour compiler
  • afficher les dépendancesgo list -m all
  • afficher les dépendances détailléesgo list -m -json all
  • téléchargement dépendant du téléchargement

    importer

importation du chemin complet

importation d'une seule ligne

import "包名"

importation multiligne

Il est préférable de les organiser dans l'ordre ASCII. (Ma suggestion est de laisser cette affaire à l'IDE) Laissez cette affaire mécanisée à la machine. §(  ̄▽ ̄

import (
	"包名"
	"包名"
	"包名"
)

exemple

import (
	_ "fmt"
	"log"
	"os"
)

Importer uniquement et ne pas utiliser

Indique que seule la fonction d'initialisation ( fonction go init ) de la bibliothèque importée est appelée et implémentée , et que le scénario d'utilisation est principalement une connexion à la base de données.

import _ "包名"

exemple

import _ "fmt"

Renommer les packages importés

Pour empêcher les packages importés portant le même nom (Est-il normal que différents auteurs portent le même nom ?)(e _ e)

impor 新名 "包名"

exemple

import (
    "crypto/rand"
    mrand "math/rand" // 将名称替换为mrand避免冲突
)

Renommer les packages importés n'affecte que le fichier source actuel. Les autres fichiers source qui importent le même package peuvent soit utiliser le nom par défaut d'origine du package importé, soit être renommés en un nom complètement différent.

Ne pas afficher le nom de la bibliothèque, appeler directement la méthode

L'effet est de supprimer le nom du package. À l'époque, cela n'était pas recommandé. Il est facile d'avoir le même nom dans les grands projets. À l'heure actuelle, le nom du package est une clé pour distinguer les fonctions.

import . "包名"

télécharger

有些时候,你需要的包并没有被包含,因此你在写代码时不会出现代码补全;又或者你使用别人的项目发现一片红色,大概率就是你没有下载对应的包。

go get

go get 只用来下载普通的包,安装可执行程序,应该使用 go install
即 go get 现在仅仅只能增减依赖包

In Go 1.18, go get will no longer build packages; it will only be used to add, update, or remove dependencies in go.mod. Specifically, go get will always act as if the -d flag were enabled.

关于 url 可以到 https://pkg.go.dev/ 中直接查询

命令格式

go get url [附加参数]

附加参数

使用 go get 时可以配合附加参数显示更多的信息及实现特殊的下载和安装操作,详见下表所示。

标记名称 描述
-d 让命令程序只执行下载动作,而不执行安装动作。
-f 仅在使用-u标记时才有效。该标记会让命令程序忽略掉对已下载代码包的导入路径的检查。如果下载并安装的代码包所属的项目是你从别人那里Fork过来的,那么这样做就尤为重要了。
-fix 让命令程序在下载代码包后先执行修正动作,而后再进行编译和安装。
-t 让命令程序同时下载并安装指定的代码包中的测试源码文件中依赖的代码包。
-u Laissez la commande utiliser le réseau pour mettre à jour les packages de code existants et leurs dépendances. Par défaut, cette commande télécharge uniquement les packages de code qui n'existent pas localement à partir du réseau et ne met pas à jour les packages de code existants.

allez installer

Cette commande est utilisée pour compiler et installer les packages de code spécifiés et leurs packages dépendants. Lorsque les packages dépendants du package de code spécifié n'ont pas été compilés et installés, cette commande traitera d'abord les packages dépendants. Comme pour go builla commande d, go installles arguments de package de code passés à la commande doivent être fournis en tant que chemins d'importation.

De plus, go buildla plupart des drapeaux des commandes peuvent également être utilisés pour go installles commandes. En fait, go installla commande ne go buildfait qu'une chose de plus que la commande, à savoir : installer le fichier de résultat compilé dans le répertoire spécifié.

aller aux paramètres de proxy

Je suppose que tu aimes

Origine blog.csdn.net/qq_40790680/article/details/128971669
conseillé
Classement