3

NuGet で問題が発生しています。実際に気が狂いそうです! nuget.exe を含むソリューションに対して TFS ビルドを実行しようとしています。ローカル ワークステーションで Visual Studio から実行するのに問題はありませんが、TFS サーバーで新しいビルドをキューに入れると、次の既知のエラーでビルドが失敗します。

D:\<...SolutionPath...>.nuget\nuget.targets (88): パッケージの復元は既定で無効になっています。同意するには、Visual Studio の [オプション] ダイアログを開き、[パッケージ マネージャー] ノードをクリックして、[ビルド中に不足しているパッケージを NuGet にダウンロードさせる] をオンにします。環境変数 'EnableNuGetPackageRestore' を 'true' に設定して同意することもできます。

D:\<...SolutionPath...>.nuget\nuget.targets (88): コマンド ""D:\<...SolutionPath...>.nuget\nuget.exe" install "D:\ <...SolutionPath...>\packages.config" -source "" -RequireConsent -solutionDir "D:\<...SolutionPath...>\ "" はコード 1 で終了しました。

問題は、TFS ビルド サーバーで既にEnableNuGetPackageRestoretrueに設定していますが、それでも同じエラーがスローされることです。また、同じTFSサーバーのcmdウィンドウから同じパラメーターを使用してnuget.exeを実行しようとしましたが、問題はありません。

ところで、これは私の NuGet.config の内容です:

<configuration>
  <solution>
    <add key="disableSourceControlIntegration" value="true" />
  </solution>
  <packageRestore>
    <add key="enabled" value="true" />
  </packageRestore>
</configuration>

何か案は?

前もって感謝します。

4

2 に答える 2

2

TFS ビルド サービス アカウントが、変更に使用したアカウントと同じであることを確認してください。また、サーバーを再起動して、環境変数がサービスになることを確認します。

于 2013-03-18T18:44:02.917 に答える
1
  1. ビルドを実行するのと同じアカウントを使用して、ビルド サーバーにログオンします。
  2. Visual Studio を開きます。
  3. NuGet パッケージ マネージャーを Visual Studio にインストールします。
  4. Visual Studio を再起動します。
  5. [ツール] --> [オプション] --> [パッケージ マネージャー] --> [全般]: [ビルド中に不足しているパッケージのダウンロードを NuGet に許可する] にチェックを入れます。
  6. ソリューションでパッケージの復元を有効にします。
于 2013-04-29T10:44:23.077 に答える