TFSビルド2015中にNuGetパッケージの復元に問題があります。
一部のパッケージにはNuGet 3.xクライアントが必要であるため、NuGet Command-Line 3.x betaの実行可能ファイルを配置したカスタムNuGetの場所を使用するように、新しいスクリプト可能なビルドを構成しました。
ビルドを実行するたびに、すべてのパッケージを復元できず、NuGetが"バージョンが見つかりません..."エラーをスローします。
Unable to find version '1.1.10' of package 'Microsoft.Bcl'.
Unable to find version '4.0.10' of package 'System.Threading'.
Unable to find version '1.1.37' of package 'System.Collections.Immutable'.
Unable to find version '1.0.0' of package 'Owin'.
Unable to find version '4.1.0' of package 'NLog'.
Unable to find version '7.0.1' of package 'Newtonsoft.Json'.
Unable to find version '2.0.1' of package 'MongoDB.Driver.Core'.
Unable to find version '2.0.1' of package 'MongoDB.Driver'.
Unable to find version '2.0.1' of package 'MongoDB.Bson'.
Unable to find version '3.0.1' of package 'Microsoft.Owin.Security.OAuth'.
...さらに多くのパッケージ。問題は明らかだと思います。
Visual Studioを使用してビルドマシンで同じソリューションをビルドすると、すべてのパッケージが正常に復元されます。
これをどうやって解決しますか?
私の場合、問題はNuGet.config
(C:\Users\[User name]\AppData\Roaming\NuGet\NuGet.config
はビルドエージェントのWindowsサービスを実行しているユーザー)にあるユーザー全体の[User name]
がNuGet API v2を指していることでした 私のビルドはすでにNuGetコマンドライン3.x を使用しています。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
<!-- CHANGING V2 TO V3 IN THE URI VALUE SOLVED THE ISSUE! -->
<add key="nuget.org" value="https://www.nuget.org/api/v3/" />
</packageSources>
</configuration>
私の場合、Nuget.Config
は次の場所にありました。
C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\NuGet
Nuget.Config
でC:\
を検索してください。
ユーザーは、Agent
を構成したアカウントに依存します
何らかの理由でローミングフォルダーのNuGet.config
の更新がオプションまたは不要でない場合、構成ファイルをソリューションルートに追加することもできます。
ドキュメントによると: