18

NuGet インストーラーのビルド手順で問題が発生しています。

公式の NuGet.org パッケージと、TeamCity NuGet サーバーでホストされている独自のパッケージの両方を使用しています。[パッケージ ソース] を空白のままにすると、nuget.org からのパッケージが見つかります%teamcity.nuget.feed.server%が、パッケージ ソースとして指定するとすぐに、nuget.org からのパッケージは見つかりません。

両方を含めるようにパッケージ ソースを設定しようとしましたが、公式の nuget.org パッケージではまだ機能しません。

https://nuget.org/api/v2/
%teamcity.nuget.feed.server%

それは nuget.org パッケージ ソースの正しい URL ではありませんか? 両方のソースを使用するように指示するにはどうすればよいですか?

JetBrains Developer ディスカッション ボードでこれを尋ねましたが、何の回答も得られませんでした。

4

4 に答える 4

12

同じ問題がありましたが、Nuget ソースが
https://www.nuget.org/api/v2/
http://nugetserver/nuget
2 番目の URL にスラッシュを追加しhttp://mynugetserver/nuget/て問題を修正するように指定されていたのは面白いことでした。理解するのにしばらく時間がかかりました。これで、Nuget-installer のビルド ステップが正常に実行されます。

于 2013-10-27T13:27:58.873 に答える
9

どうやら、NuGet インストーラーのビルド手順は必要ありません。両方のパスを含めるようにファイルを編集し.nuget/NuGet.targets、NuGet インストーラーのビルド ステップを削除したところ、動作するようになりました。

このソリューション用に最初に TeamCity をセットアップしたとき、NuGet インストーラーの手順がないと機能しませんでした。そのため、これを機能させるために他に何をしたかはわかりませんが、NuGet.targets ファイルがずっと重要だったのかもしれません。 .

このブログ投稿へのコメントは、正しい方向を示してくれました。

于 2012-10-15T19:29:53.873 に答える
2

TeamCity が実行されているユーザーのAppDataローカル フォルダーでNuGet.Configを変更できますが、各プロジェクトの .targets ファイルは変更できません。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <config>
    <!--<add key="repositoryPath" value="J:\TeamCity7\buildAgent\work\my_shared_packages_dir" />-->
  </config>
  <packageRestore>
    <add key="enabled" value="True" />
  </packageRestore>
  <packageSources>
    <add key="NuGet official package source" value="https://nuget.org/api/v2/" />
    <add key="MMG TeamCity Nuget Server" value="http://myteamcityserver/guestAuth/app/nuget/v1/FeedService.svc" />
  </packageSources>
  <activePackageSource>
    <add key="All" value="(Aggregate source)" />
  </activePackageSource>
</configuration>

各プロジェクトの .nuget フォルダー内の NuGet.exe は、最初にここで設定された構成を尊重し、次に .targets ファイルで行われたすべての "オーバーライド" を適用します。

于 2013-06-22T10:20:38.080 に答える
1

ここでも同じ問題。TeamCity v10 を使用しています。Nuget ステップが必要です (私のソリューションには .targets ファイルはありません)。ただし、別の方法を使用して「余分な」パッケージ ソースを追加しました。

c:\BuildAgent\tools\NuGet.CommandLine.2.7.0\tools\Nuget.exe sources Add -Name TeamCity-feed -Source http://myteamcityserver/guestAuth/app/nuget/v1/FeedService.svc/

その後、Nuget インストーラーのステップを追加し、TeamCity のパッケージ ソース ボックスに何も指定しなかったため、パブリック フィード nuget.org のパッケージと内部フィードの両方を問題なく復元できました。

于 2016-12-01T12:15:21.527 に答える