0

私は.NETプロジェクトのためのmspec(machine specification)ユニットテストフレームワークを使用しています。扶養家族のないNugetパッケージ

すべての必要なパッケージを取得するために、ナゲットを使用しました。

特定のパッケージがありますが、これはコードの一部ではありません。これは、私がVSの外部からユニットテストをコマンドラインから実行するために使用したmspecの "コンソール"アプリケーションです。 (It is located here): Nugetをインストールすると、NugetはTestプロジェクト内の通常の "packages.config"ファイルにそれを追加しません。 ".nuget"フォルダにある "packages.config"フォルダに追加しています。

しかし、私の同僚がプロジェクトを開いてビルドするとき、彼のVSはそのパッケージを手に入れません。

これを変更するには、VSが自動的にパッケージを取得するようにしますか?

+0

答えがあなたの問題を解決しましたか?そうでない場合は、この問題に関する最新情報をお知らせください。ありがとう。 –

答えて

1

Nugetは、Testプロジェクト内の通常の "packages.config"ファイルには追加しません。それは ".nuget"フォルダにある "packages.config"フォルダに追加しています。あなたはNuGet 2.7以降を使用してされているためである

古いパッケージで構成されているソリューションは、メソッドを復元しているがを「MSBuildの統合が復元」。これにより、パッケージの復元に同意しなかったというエラーが表示され、ビルドが失敗します。 Visual Studioは自動パッケージ復元をスキップします。

これを変更するには、VSが自動的にパッケージを取得するようにしますか?

この質問を解決するには、下記の手順ができます。

  1. ファイルロックと競合可能ファイルを避けるために、閉じるのVisual Studio。

  2. TFSを使用している場合:a。ソリューションの.nugetフォルダからnuget.exeとnuget.targetsを削除し、それらのファイルをソリューションワークスペースから削除します。 a。 Omitting packages with Team Foundation Version Controlで説明されているように、disableSourceControlIntegration設定でnuget.configを保持します。

  3. TFSを使用しない場合:a。ソリューションとソリューションワークスペースから.nugetフォルダを削除します。

  4. ソリューション内の各プロジェクトファイルを編集し、<RestorePackages>要素を削除し、nuget.targetsファイルへの参照をすべて削除します。詳細情報については、Migrating to automatic restoreを参照してください。

関連する問題