xml - the - visual studio create nuspec file




elemento nuget 'packages' não é declarado aviso (4)

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.

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).


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)






nuget