Quel est le projet.verrouillage.json?
J'ai suivi le l'instruction pour créer de nouveaux .NET de Base du projet et de l'exécution de cette cmd:
dotnet new
dotnet restore
La deuxième instruction crée project.lock.json
qui contient beaucoup de déchets (pas vraiment des ordures mais des tonnes de dépendances, configurations, etc.). Je suppose que ces dépendances est .NET framework qui est décomposé en différents packages NuGet.
Mes questions:
- Est mon hypothèse est correcte?
- Puis-je faire ma demande plus léger en retirant pas besoin de NuGet packages/dépendances?
- Comment?
- Pourquoi est-ce vers le bas voté? Je crois que NuGet est nécessaire pour .net applications de base. Sinon, vous pouvez cloner les paquets localement et de fournir votre propre alimentation.
- Habituellement, vous ne touchez pas au fichier de verrouillage. Vous devez modifier le projet.json lui-même, et le fichier de verrouillage est mise à jour automatiquement lorsque vous exécutez les outils.
- Votre question #2 est bonne et mérite ses propres DONC, la question, à mon avis.
- Voir Aussi: NuGet Docs: Projet.json de Référence
Vous devez vous connecter pour publier un commentaire.
Mise à jour:
project.json
a été remplacé par.csproj
que le fichier de projet principal pour .NET Standard projets. Cette question fait référence à l'ancien système, avant l'introduction de PackageReference NuGet 4.0.Vous pouvez encore de temps en temps voir
project.lock.json
comme un artefact du processus de construction, mais elle doit être ignorée. Gérer les packages NuGet que votre .NET Standard/.NET de Base du projet dépend devrait toujours être fait soit en.csproj
fichier directementdotnet add package
, etc)Vieille réponse pour la postérité:
project.lock.json
est généré par l' .NET outillage lorsque vous restaurez le projet paquets. Vous ne devez pas toucher ou de l'archiver dans le contrôle de source. Editproject.json
directement.Pendant le package processus de restauration (
dotnet restore
), NuGet est d'analyser les dépendances de votre projet, à pied leur des graphes de dépendance, et de déterminer quels paquets doivent être installés à votre projet et à votre projet dépendances.C'est un montant non négligeable de travail, de sorte que les résultats sont mis en cache dans
project.lock.json
pour réaliser des restaurations plus rapides et plus efficaces. Le fichier de verrouillage sera régénérée siproject.json
est modifié etdotnet restore
est exécutée à nouveau.Chaque tellement souvent, dans notre équipe, quand quelqu'un met à jour certains nuget, nous avons le même problème, la serrure.des fichiers json se complique pas mis à jour, même en cours d'exécution dotnet restaurer donc, avant d'appliquer le dernier choix (supprimer) je suggère d'exécuter grunt depuis la ligne de commande.
Si cela ne fonctionne pas, supprimez tous les verrouiller.des fichiers json et exécuter dotnet restaurer, c'est mon choix préféré 😉
project.lock.json
?package-lock.json
avecproject.lock.json