Сообщения окна вывода установки пользовательского пакета NuGet

Когда я устанавливаю свой собственный пакет NuGet, он работает, но в окне вывода в VS отображаются сообщения, как будто он дважды пытался добавить файлы, и они уже существовали. Результат находится ниже в этом посте.

У меня есть частный репозиторий NuGet на сервере, который работает для размещения нашей галереи. Установка и удаление работают, даже несмотря на то, что в окне вывода отображаются приведенные ниже сообщения. Меня интересует тег <files> в файле спецификаций, и если есть другой способ сделать это. Я пробовал несколько способов на основе документации. Моя версия обновлена ​​и установлена ​​с сайта NuGet.

С сайта: The latest version of the nuget.exe command-line tool is always available from http://nuget.org/nuget.exe

Указание файлов для включения в пакет

Окно вывода показывает такие вещи в Install-Package CustomNuGet:

Элемент /Plugins/CustomNuGet/CSS/custom.css уже существует.

Элемент /Plugins/CustomNuGet/Scripts/custom.js уже существует.

Элемент /Plugins/CustomNuGet/Views/custom.cshtml уже существует.

Окно вывода показывает такие вещи в Uninstall-Package CustomNuGet:

Элемент /Plugins/CustomNuGet/CSS/custom.css не найден в вашей рабочей области.

Элемент /Plugins/CustomNuGet/Scripts/custom.js не найден в вашей рабочей области.

Не удалось найти элемент /Plugins/CustomNuGet/Views/custom.cshtml в вашей рабочей области.

Я создал собственный пакет Nuget с помощью инструментов командной строки. Папка выглядит так:

/CustomNuGet
    CustomNuGet.nuspec
    CustomNuGet.0.1.1.nupkg
    /content
        /lib
            CustomNuGet.dll
        /Plugins
            /Views
                custom.cshtml
            /Scripts
                custom.js
            /CSS
                custom.css

Файл спецификации был создан с использованием: nuget spec и пакета nuget pack в корневой папке CustomeNuGet в соответствии с документацией. Вот файл спецификации:

    <?xml version="1.0"?>
    <package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
    <metadata>
        <id>CustomNuGet</id>
        <version>0.1.1</version>
        <authors>CustomNuGet</authors>
        <owners>CustomNuGet</owners>
        <requireLicenseAcceptance>false</requireLicenseAcceptance>
        <description>CustomNuGet</description>
        <tags>CustomNuGet</tags>
        <references>
            <reference file="CustomNuGet.dll" />
        </references>
        <dependencies>
            <dependency id="WebActivatorEx" version="2.0.0" />
        </dependencies>
    </metadata>
    <files>
        <file src="content\lib\CustomNuGet.dll" target="lib"/>
        <file src="content\Plugins\**" target="content\Plugins" />
    </files>
    </package>

Я не видел никаких сообщений об этой точной проблеме, поэтому, надеюсь, у других это произошло, и это только настройка, которую я пропустил.


person area28    schedule 15.01.2015    source источник
comment
Ваше решение связано с системой контроля версий TFS, да?   -  person Rhumborl    schedule 15.01.2015
comment
Да. Наши репозитории находятся на TFS.   -  person area28    schedule 15.01.2015
comment
Вы пытались открыть файл .nupkg, который вы создаете на упаковке? Это просто zip-файл, поэтому его откроет такая программа, как 7-zip (вы также можете использовать такой инструмент, как NuGet Package Explorer ). В любом случае, вы можете просмотреть пакет и посмотреть, как все устроено, включены ли файлы дважды или что-то еще выглядит не так.   -  person NextInLine    schedule 17.01.2015
comment
Да. Структура пакета отображается правильно. Спасибо.   -  person area28    schedule 17.01.2015
comment
Это точно ошибки? Сообщения, кажется, указывают на то, что в вашей папке плагинов есть дополнительная папка «CustomNuGet», которая не соответствует тому, как вы говорите, что структура папок выложена.   -  person Tim B    schedule 16.04.2015
comment
Это точные ошибки. Файл NuSpec имеет тег <file>, указывающий, куда поместить файлы. Пути правильные. Плагины в ошибке относятся к папке в корне проекта, которую он создает, если не существует. Это может быть TFS, включающая вещи в проект и не любящая это, когда вы хотите удалить их из системы контроля версий таким образом.   -  person area28    schedule 16.04.2015
comment
Попробуйте установить этот пакет в чистый новый проект, который не находится под TFS, так что вы можете устранить или подтвердить фактор TFS здесь.   -  person qbik    schedule 21.04.2015
comment
Этого не происходит в проекте с исходным кодом, отличном от TFS.   -  person area28    schedule 18.06.2015


Ответы (1)


Это может произойти, если вы удалили ссылку на .dll вручную, а не использовали uninstall-package для ее удаления через консоль. Проверьте файл packages.config, пакет, который вы пытаетесь установить, вероятно, все еще указан там. Вам придется удалить его из этого файла конфигурации и сохранить изменения. После того, как вы это сделали, попробуйте снова установить пакет, и он должен работать.

person msmolcic    schedule 05.07.2015