Maison >développement back-end >Golang >Comment puis-je importer des packages locaux dans mon projet de module Go ?

Comment puis-je importer des packages locaux dans mon projet de module Go ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-26 11:32:19434parcourir

How Can I Import Local Packages in My Go Module Project?

Modules Go et importation de packages locaux

Tenter d'importer des packages locaux dans un projet de module Go peut présenter des défis. Considérons une structure de projet avec des packages stockés en dehors de gopath :

/
  - /platform
      - platform.go
  - main.go
  - go.mod

Avec le package de plate-forme défini dans platform.go et main.go en essayant d'importer le package de plate-forme, vous pourriez rencontrer l'erreur :

cannot find module for path platform

Pour résoudre ce problème, nous parcourons les fonctionnalités des modules Go.

Dans Go 11, les modules fournissent les moyens d'organiser et de gérer les packages. Deux approches sont disponibles selon la relation entre les packages :

Même projet :
Si les packages résident au sein du même projet, une simple modification du fichier go.mod suffit :

module github.com/userName/moduleName

import "github.com/userName/moduleName/platform"

Modules séparés :
Si les packages sont séparés en modules distincts, une directive replace peut être employé :

module github.com/userName/mainModule

require "github.com/userName/otherModule" v0.0.0
replace "github.com/userName/otherModule" v0.0.0 => "local physical path to the otherModule"

Dans main.go, utilisez le format suivant pour importer un package spécifique à partir du module local :

import "github.com/userName/otherModule/platform"

En tirant parti de ces techniques, vous pouvez accéder de manière transparente aux packages locaux dans les projets du module Go.

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!

Déclaration:
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