2016-10-14 8 views
0

project.jsonファイルに1つのNuGet依存関係のプロジェクトがあります。 BuildはVS2015内で正常に動作し、VS2015と同じコンピュータ上のMSBuildも正常に動作します。 (リモートのgitリポジトリからクローンされた別の完全に無関係なディレクトリでさえ)MSBuildがインストールされているナゲット(NuGet 3)を無視して失敗します。

しかし、別のコンピュータ(同じMSBuildバージョン)では、参照エラーで失敗します。私は出力を読んで、私はMSBuildのは、2つのインスタンスで同じcsc.exeコマンドを起動していませんが見つかりました:番目のインスタンスでC:\Program Files (x86)\MSBuild\14.0\bin\csc.exe /noconfig /nowarn:1701,1702 /nostdlib+ /errorreport:prompt /warn:4 /define:DEBUG;TRACE /highentropyva+ /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\Microsoft.CSharp.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\mscorlib.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.Core.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.Data.DataSetExtensions.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.Data.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.Xml.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.Xml.Linq.dll" /debug+ /debug:full /filealign:512 /optimize- /out:obj\Debug\ImportCommon.dll /subsystemversion:6.00 /target:library /utf8output EcritureCSV.cs LectureCSV.cs Properties\AssemblyInfo.cs "C:\Users\maurin\AppData\Local\Temp\4\.NETFramework,Version=v4.5.AssemblyAttributes.cs"

C:\Program Files (x86)\MSBuild\14.0\bin\csc.exe /noconfig /nowarn:1701,1702 /nostdlib+ /errorreport:prompt /warn:4 /define:DEBUG;TRACE /highentropyva+ /reference:C:\Users\tm\.nuget\packages\log4net\2.0.5\lib\net45-full\log4net.dll/reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\Microsoft.CSharp.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\mscorlib.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.Core.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.Data.DataSetExtensions.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.Data.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.Xml.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.Xml.Linq.dll" /debug+ /debug:full /filealign:512 /optimize- /out:obj\Debug\ImportCommon.dll /ruleset:"C:\Program Files (x86)\Microsoft Visual Studio 14.0\Team Tools\Static Analysis Tools\\Rule Sets\MinimumRecommendedRules.ruleset" /subsystemversion:6.00 /target:library /utf8output EcritureCSV.cs LectureCSV.cs Properties\AssemblyInfo.cs "C:\Users\tm\AppData\Local\Temp\.NETFramework,Version=v4.5.AssemblyAttributes.cs"

失敗例:インスタンスの作業

以前にnuget restoreでダウンロードされているため、MSBuildは引数が/reference:C:\Users\tm\.nuget\packages\log4net\2.0.5\lib\net45-full\log4net.dllからcsc.exeまで渡されますが、ファイルは存在します。

MSBuildがこの引数を追加しない理由はわかりません。 洞察力があれば幸いです。

答えて

0

msbuildは、nugetパッケージを復元しません。実行する必要がありますnuget.exe restore

Visual Studioマシンでビルドすると、ビルドとしてmsbuildがVSで既に復元されています。

+0

答えをいただきありがとうございますが、言及されているように、パッケージは既に 'nuget restore'で復元されています。 –

関連する問題