7

出力ウィンドウに次のエラーが表示されます。

D:\{solutionPath}\.nuget\nuget.targets(76,9): error : 
D:\{solutionPath}\.nuget\nuget.targets(76,9): error : Unhandled Exception: OutOfMemoryException.
D:\{solutionPath}\.nuget\nuget.targets(76,9): error MSB3073: The command ""D:\{solutionPath}\.nuget\nuget.exe" install "D:\{pathToConfigLocation}\packages.config" -source "" -o "D:\{solutionPath}\packages"" exited with code -1.

上記はNuGet.targetsをそのまま使用したものです。

D:\{solutionPath}\.nuget\nuget.targets(76,9): error : 
D:\{solutionPath}\.nuget\nuget.targets(76,9): error : Unhandled Exception: OutOfMemoryException.
D:\{solutionPath}\.nuget\nuget.targets(76,9): error MSB3073: The command ""D:\{solutionPath}\.nuget\nuget.exe" install "D:\{pathToConfigLocation}\packages.config" -source "{localPackageDir}" -o "D:\{solutionPath}\packages"" exited with code -1.

NuGet.targets のパッケージ ソースにある

ビルドが行われているとき、すべてのメモリを使い果たすのに必要な数の nuget.exe プロセスが作成され、失敗して別の処理が行われます。

コマンドを取得し、cmd で実行しました。

"D:\{longPah}\.nuget\nuget.exe" install "D:\{longPah}\packages.config" -source "\\{longPah}\NuGetPackages" -o "D:\{longPah}\packages"

これにより、次のエラーが表示されます。

Unhandled Exception: System.IO.FileLoadException: Could not load file or assembl
y 'System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or
 one of its dependencies. Exception from HRESULT: 0x800705AF
   at Bootstrapper.Program.Main(String[] args)

マシンに.net 4があります。

できれば助けてください。

ありがとう、デビッド

編集

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="Company.Common.Library" version="0.1.2" targetFramework="net35" />
</packages>

要求に応じて packages.config。

編集

Visual Studio コマンド プロンプト (管理者として実行) からコマンドを実行しようとしましたが、次の例外がスローされます。

未処理の例外: OutOfMemoryException。

編集 - 可能な修正

私は問題を発見したと思います....nugetフォルダー内のnuget.exeに関係しているようです。

私にはいくつかの解決策があり、機能するいくつかの解決策が見つかりました.ファイルパーマを見てかなりの時間を費やしました(それが問題であるとアドバイスされました)。

うまくいった解決策で私が見つけた:

ここに画像の説明を入力

私が見つけられなかった解決策で:

ここに画像の説明を入力

ご覧のとおり、2 つのファイル サイズは大幅に異なります。すべてのプロジェクトは、チーム内のさまざまな人によって追加されました。これは、開発者のマシンにインストールされている nuget のバージョンに問題がある可能性がありますか?

もしそうなら、ソリューションのパッケージの復元を有効にすることを選択したときに、どのバージョンの nuget が上記の問題を引き起こすか知っている人はいますか? 私のマシンには最新バージョンの NuGet がインストールされています。

4

1 に答える 1

13

どちらもエラーの原因になります。小さい方のファイルは、%LOCALAPPDATA%\NuGetにダウンロードする実際のバージョンにコマンドを渡すシェルにすぎません。10日ごとに新しいバージョンをチェックします。

この問題を見てください:http://nuget.codeplex.com/workitem/2390(nugetパッケージの復元はインターネットアクセスを想定しています)-18Kシェルが完全なnuget.exeを%LOCALAPPDATA%\にダウンロードしようとしている可能性がありますNuGetフォルダーがあり、何らかの理由でできません。

NuGet 2.0がリリースされたとき、パッケージ復元のオプトイン同意が付属していました。http://blog.nuget.org/20120619/nuget-2.0-released.htmlおよびhttp://blog.nuget.org/20120518/package-restore-and-consent.htmlを参照してください。それを機能させるために行われるべきです。

または、NugetEnablePackageRestoreパッケージ(http://nuget.org/packages/NuGetEnablePackageRestore )を使用して、完全な同意を永続的に受け入れることができ ます。この修正により、ビルドサーバーを含む将来のすべてのユーザーが修正されることに注意してください。

于 2012-07-10T02:52:48.587 に答える