Maison >développement back-end >Golang >Comment fourcher ? Erreur : trouvé mais ne contient pas de package

Comment fourcher ? Erreur : trouvé mais ne contient pas de package

WBOY
WBOYavant
2024-02-09 20:09:08436parcourir

Comment fourcher ? Erreur : trouvé mais ne contient pas de package

Dans cet article, l'éditeur PHP Youzi partagera avec vous comment gérer le problème de "Comment forker ? Erreur : Trouvé, mais le package n'est pas inclus". Cette erreur se produit généralement lors de l'utilisation d'un système de contrôle de version, indiquant que le système a trouvé la branche concernée, mais ne contenait pas le package ou le fichier requis. Dans cet article, nous expliquerons comment diagnostiquer et résoudre cette erreur pour assurer le fonctionnement normal du projet. Que vous soyez débutant ou développeur expérimenté, cet article vous apportera des solutions et des conseils utiles. Résolvons ce problème ensemble !

Contenu des questions

Exécuter :

go install github.com/google/[email protected]
go install github.com/googleapis/[email protected]

Cet outil fonctionne :

gnostic --grpc-out=./target ./source.yaml

J'ai forké la bibliothèque https://github.com/google/gnostic-grpc et je l'ai modifiée pour ne pas effectuer de conversion de cas de serpent, et j'ai également renommé le package github.com/thlib 的所有引用/gnostic-grpc afin qu'il puisse être installé.

Puis j'ai essayé de l'installer :

go install github.com/thlib/gnostic-grpc@04d3e8500daa070fbe8c6118fe3b62e42d4a9b1f

Aussi :

go install github.com/google/[email protected]
go install github.com/thlib/[email protected]

Mais cela génère une erreur :

go: downloading github.com/thlib/gnostic-grpc v0.1.3
go: github.com/thlib/[email protected]: module github.com/thlib/[email protected] found, but does not contain package github.com/thlib/gnostic-grpc

Je ne comprends pas ce que j’ai fait de mal.

  1. Le package a été renommé
  2. Courez go mod init github.com/thlib/gnostic-grpc && go mod tidy

Puis git cloned'original, maintenant je suis encore plus confus, comment ça marche ?

go install github.com/google/[email protected]
go install github.com/googleapis/[email protected]

Il ne semble pas y en avoir au niveau racine main.go 包,go installComment savoir quoi installer ?

De plus, si un package contient une utilisation d'un type non déclaré, par exemple, comment l'installe-t-il ? /incompatibilityapisetincompatibility , ce n'est déclaré nulle part, ça ne devrait pas être un bug ?

Il s'agit d'une erreur dans la description officielle, il semble qu'ils aient également commis l'erreur à un moment donné :

go install github.com/google/[email protected]
go install github.com/google/[email protected]

J'ai examiné ces questions (et d'autres questions et publications sur Reddit, etc.) et elles semblent être différentes :

  • Go module @dernier trouvé, mais pas de package
  • Module trouvé mais pas de package
  • Allez installer le @dernier package trouvé mais non inclus
  • go : module trouvé mais pas de package
  • module privé golang (v1.17) -- package trouvé mais non inclus

Solution de contournement

De plus, si un package contient une utilisation d'un type non déclaré, par exemple, comment l'installe-t-il ? /incompatibility a ApiSetIncompatibility qui n'est déclaré nulle part, cela ne devrait-il pas être une erreur ?

ApiSetIncompatibility sera déclarée dans le fichier .pb généré après la compilation du proto. Vous pouvez le trouver dans le fichier incompatibility/incompatibility-report.proto à la ligne 88. Donc, pour résoudre ce problème, vous devez d'abord générer le fichier .pb à l'aide du protocole.

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer