2017-09-20 1 views
0

Cela fonctionnait auparavant. Lorsque je tente de créer un package NuGet de Package Manager Console à l'aide de la commande suivanteImpossible de charger le fichier ou l'assembly 'Microsoft.Build.Framework, Version = 15.1.0.0 en essayant de créer un paquet de nuget

nuget.exe pack $testCoreProj -Build -OutputDirectory $outputPackagePath 

Je reçois cette erreur

Attempting to build package from 'Test.PageObjects.csproj'. 
MSBuild auto-detection: using msbuild version '15.0' from 'C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\15.0\Bin'. 
nuget.exe : Could not load file or assembly 'Microsoft.Build.Framework, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified. 
At C:\Good\GIT\mg-alfa-dev\Test.Core\CreateNuGetPackage.ps1:26 char:1 
    + nuget.exe pack $testPageObjectsProj -Build -OutputDirectory $outputPa ... 
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
     + CategoryInfo   : NotSpecified: (Could not load ...file specified.:String) [], RemoteException 
     + FullyQualifiedErrorId : NativeCommandError 
+0

What's la version de Visual Studio et le cadre cible que vous utilisez? Pouvez-vous confirmer que l'assembly 'Microsoft.Build.Framework' existe dans le dossier d'installation du framework .NET, etc. .NET 4.5.2, C: \ Program Files (x86) \ Assemblys de référence \ Microsoft \ Framework \ .NETFramework \ v4. 5.2? En outre, s'il vous plaît d'abord mettre à jour votre Visual Studio à la dernière version, je peux exécuter cette commande avec succès sur VS 2017 15.3.3. Et essayez cette commande sur un nouveau projet de création de bibliothèque commune, etc. –

+0

VS Professional 2017 Version 15.3.5 Cadre cible: 4.5.2 L'assembly existe mais sa version de fichier est 15.3.409.57025 et la version du produit est 15.3.409 + gc1de301405 "C: \ Program Files (x86) \ Reference Assemblys \ Microsoft \ Framework \ .NETFramework \ v4.5.2 \ Microsoft.Build.Framework.dll ". Serait-ce le problème? –

+0

puisque vous pouvez exécuter cette ligne commnad dans la console du gestionnaire de packages, vous devez ajouter le chemin d'accès nuget.exe dans le chemin d'environnement. Pourriez-vous s'il vous plaît essayer de mettre à jour la version de nuget.exe dans ce chemin? https://dist.nuget.org/win-x86-commandline/v4.3.0/nuget.exe –

Répondre

0

Puisque vous pouvez exécuter cette ligne de commnad dans la console Package Manager, vous devez ajouter le chemin de nuget.exe dans le chemin d'environnement. Pourrait essayer de mettre à jour s'il vous plaît la version nuget.exe (Au-dessus de 4.0) dans ce chemin:

https://dist.nuget.org/win-x86-commandline/v4.3.0/nuget.exe