xml - the - visual studio create nuspec file
elemento nuget 'packages' não é declarado aviso (4)
não é um showstopper, mas ao usar o nuget em um projeto, ele cria um arquivo packages.config com essa forma
<?xml version="1.0" encoding="utf-8"?>
<packages>
... your packages
</packages>
isso dá um aviso em VS
The 'packages' element is not declared.
A origem do problema tem algo a ver com a declaração xml, eu acho.
Também acho que o pacote de definição padrão não deve lançar avisos.
Alguém sabe o que devo mudar para que eu não receba este aviso? (ou seja, mesmo que eu possa vê-lo apenas quando o arquivo estiver aberto, ele também será exibido como um aviso constantemente com determinadas regras da CA).
Isso acontece porque o VS não conhece o esquema desse arquivo. Observe que esse arquivo é mais um detalhe de implementação e não é algo que você normalmente precisa abrir diretamente. Em vez disso, você pode usar o diálogo NuGet para gerenciar os pacotes instalados em um projeto.
Na verdade, a resposta correta para isso é apenas adicionar o esquema ao seu documento, assim
<packages xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
... e pronto! :)
Se o XSD ainda não estiver armazenado em cache e indisponível, você poderá adicioná-lo da seguinte maneira no console do NuGet
Install-Package NuGet.Manifest.Schema -Version 2.0.0
Feito isso, conforme observado em um comentário abaixo, você pode querer movê-lo de sua pasta atual para a pasta de esquema oficial encontrada em
%VisualStudioPath%\Xml\Schemas
O problema é que você precisa de um esquema xsd para o packages.config
.
É assim que você pode criar um esquema ( eu encontrei aqui) :
Abra seu arquivo Config -> XML -> Criar Esquema
Isso criaria um packages.xsd
para você e o abriria no Visual Studio:
No meu caso, packages.xsd
foi criado sob este caminho:
C: \ Users \ MyUserName \ AppData \ Local \ Temp
Agora eu não quero referenciar o packages.xsd
de uma pasta Temp, mas eu quero que ele seja adicionado à minha solução e adicionado ao controle de origem, para que outros usuários possam obtê-lo ... então eu copiei packages.xsd
e colei na minha pasta de solução. Então eu adicionei o arquivo à minha solução:
1. Copie packages.xsd
na mesma pasta que sua solução
2. A partir do VS, clique com o botão direito do mouse em solution -> Add -> Existing Item ... e adicione packages.xsd
Então, agora criamos o packages.xsd
e o adicionamos à solução. Tudo o que precisamos fazer é dizer ao arquivo de configuração para usar este esquema.
Abra o arquivo de configuração e, no menu superior, selecione:
XML -> Esquemas ...
Adicione seus packages.xsd
e selecione Usar este esquema (veja abaixo)
Você só verá quando o arquivo estiver aberto. Quando você fechar o arquivo no Visual Studio, os avisos desaparecem