Maison > développement back-end > Golang > Comment obtenir un support multi-module parfait pour GoLand sur VSCode (aucun travail requis)

Comment obtenir un support multi-module parfait pour GoLand sur VSCode (aucun travail requis)

PHPz
Libérer: 2024-02-09 11:30:20
avant
621 Les gens l'ont consulté

如何在 VSCode 上获得 GoLand 的完美多模块支持(无需工作)

L'éditeur php Xigua vous présentera aujourd'hui une méthode qui vous permet d'obtenir un support multi-module parfait similaire à GoLand sur VSCode sans travail supplémentaire. VSCode est un outil de développement très populaire et GoLand est un IDE spécialement conçu pour le développement du langage Go. Pour les développeurs qui utilisent VSCode pour le développement du langage Go, s'ils peuvent bénéficier de la prise en charge multi-modules de GoLand, l'efficacité du développement sera considérablement améliorée. Alors, comment atteindre cet objectif ? Ensuite, nous y répondrons une par une pour vous.

Contenu de la question

Lorsque j'ouvre un projet multi-module dans GoLand (Jetbrains), cela fonctionne parfaitement, la implémentation, les déclarations de type et d'autres fonctionnalités IDE utiles fonctionnent correctement dès le départ.

Mais lorsque j'ouvre le même projet dans VSCode, je n'arrive pas à faire fonctionner Intellisense (en apportant des modifications importantes à la structure du module en utilisant gopls),它不起作用,并且需要使用 go work, (ce n'est donc pas une option pour moi) p>

Est-ce parce que GoLand utilise un serveur de langue différente ?

J'ai essayé d'essayer la configuration de l'extension Go mais cela n'a apporté aucun avantage. J'ai pu désactiver le serveur de langue en faisant tout rouge, mais ce n'est pas une solution

Workaround

go workspace fait partie de la boîte à outils et devrait fonctionner avec n'importe quel IDE prenant en charge cette fonctionnalité. Je l'utilise tous les jours sur vs code.

Donc, fondamentalement, vous devez avoir un fichier go.work à la racine du projet et vs code l'interprétera. Exemple :

go 1.20

use (
    .
    ./mymodule1
    ./mymodule2
)
Copier après la connexion

La différence est que Goland ajoute automatiquement des modules dans une configuration multi-modules, je ne savais pas que vs code avait cette fonctionnalité.

Lorsque vous créez le fichier go.work, goland ajoutera automatiquement tous les modules du projet.

Si vous cochez go .gitignore, vous verrez que go.work les fichiers sont ignorés par défaut, donc je suppose que vous ne l'avez pas versionné. Je commente généralement cette ligne afin que vs code la suive et l'inclue dans mes commits.

# Go workspace file
go.work
Copier après la connexion

Pour ajouter un nouveau module à go.work,只需执行 go 工作,使用新模块根目录中的 ., effectuez simplement un travail go, en utilisant . à la racine du nouveau module.

Parfois, je dois recharger le code pour le synchroniser, mais généralement cela fonctionne immédiatement.

Si vous rencontrez toujours des problèmes, cela vaut peut-être la peine d'essayer Dépannage de l'extension.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:stackoverflow.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal