2016-06-22 13 views
1

asp.netコアWebアプリケーション(RC2)のVisual Studio Team Servicesフィードからnugetパッケージをインストール/復元できません。私は、次を受け取る:asp.net core rc2を使用したVisual Studio Team Servicesの不正なnugetパッケージ

error: Response status code does not indicate success: 401 (Unauthorized).

私はVisual Studioのコミュニティ2015のアップデート2とnugetバージョン3.4.4を実行しています。私はこのフィードから他のプロジェクトタイプのパッケージをインストール/復元することができます。

asp.netコアWebアプリケーションの資格情報を渡すには何か他の処理が必要ですか?

手順に再現する:

チームServicesパッケージ]タブから、私は、Visual Studioで

を "フィードへの接続を" とNuGetパッケージソースのURLをコピーする選択 - > [ツール] - > [NuGetパッケージマネージャ - >パッケージマネージャの設定 - >パッケージソースとvsoのフィードURLを追加

次に、ASP.NET Core Webアプリケーション(.NET Framework)プロジェクトの右クリック参照 - > Manage NuGet Pack - >パッケージソースからフィードを選択(パッケージが記載されています) - >出力で

をインストールするにはクリックしてください。

Installing NuGet package xxxxx 
Successfully installed xxxxx to WebApplication1 
========== Finished ========== 

その後、それは私が得るその時点でパッケージ復元しようとします:

error: Response status code does not indicate success: 401 (Unauthorized). 
error: Failed to retrieve information from remote source 

とWebプロジェクト参照の内側を - パッケージには、アイコンを警告しています - NU1001依存関係xxxxxを解決できませんでした

+0

VSの右上隅からVSTSアカウントにサインインしましたか?この問題を再現するための手順を共有できますか? –

+0

@ Eddie-MSFT - なぜサインインするのが問題なの? NuGetでホストされているフィードは、承認を必要としません。私はむしろ、これは、サインインが問題ではない場合の承認を必要とするプロキシの問題かもしれないと思いますか? @HPaxton - 'dotnet restore'でコマンドラインから復元しようとすると同じ問題が発生しますか?使用しているフィードを確認して投稿できますか? 'dotnet restore'を実行すると、最後に使用されたフィードが表示されます。 – Pawel

+0

@Pawel彼は非公開のフィードであるビジュアルスタジオのオンラインフィードを使用しています。 –

答えて

3

私は私の側であなたの問題を再現して、次のことができ、私はパッケージを復元するために使用する回避策です:

  1. は\「VS \ツールからNuGetパッケージマネージャ\パッケージのソースをVSTSフィードリソースを削除します"
  2. VSTS Webポータルから[パッケージ]タブを開きます。
  3. 接続するフィードを選択し、[フィードに接続]オプションをクリックします。
  4. ダイアログの[個人用アクセストークン]を選択します。
  5. 生成されたコマンドをダイアログにコピーします。
  6. あなたのマシンでCMDを管理者として実行します。
  7. コピーしたコマンドをCMDに貼り付けます。
  8. コマンドの後に "-StorePasswordInClearText"引数を追加します。
  9. コマンドを実行します。
  10. VSを再起動します。
  11. パッケージをインストールして復元します。
+0

私は同じ問題を抱えていたので、代わりにPATを使用するあなたのやり方に従った。今は少なくとも次のような別のエラーが発生します。 ソースのパスワードの復号化に失敗しました: 'https://****.pkgs.visualstudio.com/_packaging/myfeed/nuget/v3/index.json'はこのプラットフォームではサポートされていません。代わりに平文のパスワードを使用することができます。 – SamDevx

+0

@SamDevx手順8を確認してください。手順8を実行しなくてもエラーメッセージが表示されます。 –

+0

申し訳ありません。あなたの回避策は揺れる!ここでのキーは、提案した通りにPATを使用していますが、-StorePasswordInClearTextスイッチで変更しています。私はついにこのプロジェクトに進むことができます。しかし、ある時点では、彼ら(ナゲットや.NET Coreチーム)はこのひどい問題を解決する必要があります。 – SamDevx

1

VSTSビルド定義のNuGetリストアタスクで同様の問題(認証なし)がありました。解決策は、プロジェクトのルートにNuGet.configファイルを追加して、公式フィードと私のカスタムフィードへの参照を追加することでした。多分あなたのコアプロジェクトにも役立ちます。

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 

    <packageSources> 
    <clear /> 
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" /> 
    <add key="RmlrTools" value="https://<MyProjectName>.pkgs.visualstudio.com/DefaultCollection/_packaging/<MyFeedName>/nuget/v3/index.json" /> 
    </packageSources> 
    <!-- used to store credentials --> 
    <packageSourceCredentials /> 
    <!-- Used to specify which one of the sources are active --> 
    <activePackageSource> 
    <!-- this tells only one given source is active --> 
    <add key="NuGet official package source" value="https://nuget.org/api/v2/" /> 
    <!-- this tells that all of them are active --> 
    <add key="All" value="(Aggregate source)" /> 
    </activePackageSource> 
    <!-- Used to disable package sources --> 
    <disabledPackageSources /> 
    <!-- 
    Used to specify default API key associated with sources. 
    See: NuGet.exe help setApiKey 
    See: NuGet.exe help push 
    See: NuGet.exe help mirror 
    --> 
    <!--<apikeys> 
    <add key="http://MyRepo/ES/api/v2/package" value="encrypted_api_key" /> 
    </apikeys>--> 
</configuration> 
1

また、hereは、「.NETコア」のセクションでどのように行うべきかを示すドキュメントです。

関連する問題