Я пытаюсь обновить пакет nuget, чтобы добавить ссылки на сборки, но я получаю следующую ошибку:
Элемент 'метаданные' в пространстве имен 'http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd' имеет недопустимый дочерний элемент' frameworkAssemblies 'в пространстве имен http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd'. Список возможных ожидаемых элементов:' зависимости, язык, сводка 'в пространстве имен' http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd'
Я считаю, что эта функциональность была добавлена в NuGet 1.2 - я использую 1.2.2213.45.
Вот мой файл nuspec:
<?xml version="1.0"?> <package xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <metadata xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd"> <id>PetaPoco.Core</id> <title>PetaPoco.Core - A tiny ORMish thing for your POCOs (Core Only)</title> <version>3.0.0</version> <authors>Topten Software</authors> <owners>Topten Software</owners> <licenseUrl>http://www.toptensoftware.com/petapoco/license</licenseUrl> <projectUrl>http://www.toptensoftware.com/petapoco/</projectUrl> <iconUrl>http://www.toptensoftware.com/petapoco/nuget_icon.png</iconUrl> <requireLicenseAcceptance>true</requireLicenseAcceptance> <description> PetaPoco is a tiny, single file .NET data access layer inspired by Massive that works with both non-dynamic POCO objects and dynamics. This package includes the just the core PetaPoco library (ie: no T4 templates) </description> <tags>ORM POCO MVC MVC2 MVC3 ASP.NET WebForms WebMatrix MySQL Database</tags> <frameworkAssemblies> <frameworkAssembly assemblyName="System.Data" /> <frameworkAssembly assemblyName="System.Configuration" /> </frameworkAssemblies> </metadata> <files> <file src="PetaPoco.cs" target="Content\Models" /> </files> </package>
Я думаю, что у вас устаревшая версия nuget.exe.Вы можете просто запустить 'nuget update', и он обновится до последней версии (на сегодняшний день это 1.3.20425.372).Ваш nuspec должен работать нормально!
Вы также можете получить эту ошибку, если вы поместили элемент в неправильном месте. например Вы размещаете элементы <dependencies> вне элемента <metadata>.
<dependencies>
<metadata>
У меня тоже получилось после установки / удаления бета-версии VS11.
Переустановка nuget с его страницы проекта codeplex довольно быстро разрешила проблему.