nuget 'packages' 要素が宣言されていないことの警告

しかし、プロジェクトでnugetを使用する場合、packages.configファイルにこのような形状のファイルが作成されます。

<?xml version="1.0" encoding="utf-8"?>
<packages>
   ... your packages
</packages> 

これはVSで警告を出します。

The 'packages' element is not declared.

この問題の原因は、xmlの宣言と関係があるようです。

また、デフォルトの定義パッケージは警告を出すべきでは無いと思います。

この警告が出ないようにするには、何を変更すればいいのか、誰か知っていますか?(たとえファイルを開いているときだけ見ることができても、あるCAルールをオンにしていると常に警告として表示されます。)

質問へのコメント (3)

ファイルを開いているときだけ表示されます。 Visual Studioでファイルを閉じると、警告は消えます。

http://nuget.codeplex.com/discussions/261638

解説 (6)

実際、これに対する正しい答えは、そのようにスキーマをドキュメントに追加することです。

。これで完了です:)。. XSDがまだキャッシュされておらず、利用できない場合は、NuGetコンソールから次のように追加できます。

Install-Package NuGet.Manifest.Schema -Version 2.0.0

これが完了したら、以下のコメントに記載されているように、現在のフォルダーからそこにある公式のスキーマフォルダーに移動することができます。

%VisualStudioPath%\Xml\Schemas
解説 (11)
ソリューション

この警告を取り除くには、常に 'packages.config' のために簡単な xsd スキーマを作成することができます。これを行うには、"packages.xsd" という名前のファイルを作成します。

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















このファイルの場所(2つのオプション)

  • 'packages.config' ファイルと同じフォルダー内。
  • 複数のプロジェクトで packages.xsd を共有したい場合は、Visual Studio Schemas フォルダに移動します (パスは若干異なるかもしれませんが、私の場合は D:\Program Files (x86)\Microsoft Visual Studio 10.0Xml³³Schemas です)。

そして、packages.configファイルの`タグを編集します(xmlns`属性を追加します)。

これで、警告が消えるはずです(Visual Studioでpackages.configファイルを開いている場合でも)。

解説 (14)

どの答えもあなたの問題を永久に解決しません。 XSDを追加するパスに移動すると(Xmlメニューから[スキーマを作成]を選択します)、新しいパッケージを追加するとpackages.configファイルがクリーンアップされるため、パッケージマネージャーで問題が発生します。

最善の解決策は、ファイルを使用しないときにファイルを閉じて無視することです。

解説 (1)

これは、VSがこのファイルのスキーマを知らないために起こります。このファイルはどちらかというと実装の詳細であり、通常直接開く必要のあるものではないことに注意してください。代わりに、NuGetダイアログを使って、プロジェクトにインストールされたパッケージを管理することができます。

解説 (1)

問題は、「packages.config」のxsdスキーマが必要であることです。

これがスキーマを作成する方法です(ここで見つけました):

  • Configファイルを開く-> XML ->スキーマを作成*。

。![ここに画像の説明を入力してください](https://i.stack.imgur.com/J7OwA.jpg。)

これにより、 packages.xsdが作成され、Visual Studio:で開きます。

。![ここに画像の説明を入力してください](https://i.stack.imgur.com/VBPzm.jpg。)

私の場合、「packages.xsd」はこのパスの下で作成されました。

  • C:\ Users \ MyUserName \ AppData \ Local \ Temp *。

Tempフォルダーから packages.xsdを参照したくありませんが、それをソリューションに追加してソースコントロールに追加して、他のユーザーが取得できるようにしたいと考えています。.. そこで、「packages.xsd」をコピーして、ソリューションフォルダーに貼り付けました。 次に、ファイルをソリューションに追加しました。

  • 1。 ソリューション*と同じフォルダーに「packages.xsd」をコピーします。

  • 2。 VSから、ソリューションを右クリックします-> ->を追加既存のアイテム。..*次に、「packages.xsd」を追加します。

。![ここに画像の説明を入力してください](https://i.stack.imgur.com/gPKKK.jpg。)

これで、「packages.xsd」を作成し、ソリューションに追加しました。 必要なのは、構成ファイルにこのスキーマを使用するように指示することだけです。

構成ファイルを開き、上部のメニューから次を選択します。

  • XML ->スキーマ。..*。

packages.xsdを追加し、このスキーマを使用するを選択します(以下を参照)。

。![ここに画像の説明を入力してください](https://i.stack.imgur.com/pov8G.jpg。)

解説 (0)

これは機能し、新しいパッケージを追加した後でも残ります。

以下を追加します。 !& lt;パッケージ>の上のDOCTYPE要素:

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


]>
解説 (0)