Установка Nuget в Visual Studio 2017 пропускает папку содержимого с именем «Windows» - PullRequest
0 голосов
/ 19 января 2019

Я создал пакет nuget, содержащий папку содержимого с именем «Windows».Структура папок выглядит следующим образом:

|- package.nuspec
|- content
   |- first.cs.pp
   |- Windows
      |- second.cs.pp

Пакет успешно создан из командной строки с использованием Nuget.exe 4.7.0.5148.Я проверил, что все файлы были правильно включены в файл .nupkg.Однако, когда я устанавливаю этот пакет в проект Visual Studio, вся папка Windows исключается.Если я изменю 's' на 'z' (Windowz), он будет работать нормально, и будет установлен second.cs.

Я установил пакет -verbose, а папка Windows даже неупоминается.Является ли «Windows» зарезервированным именем папки для nuget?

Содержимое пакета и сам пакет публикуются на github .

Ответы [ 2 ]

0 голосов
/ 24 января 2019

Является ли "Windows" зарезервированным именем папки для nuget?

Краткий ответ - да. Я скачал ваш пакет nuget и открыл его с помощью NuGet Package Explorer (вы можете получить его в магазине Microsoft). Затем я заметил, что папка Windows помечена как Target Frameworks:

enter image description here

Если мы изменим Windows на другое слово, оно станет общей папкой, которую можно добавить в проект:

enter image description here

Затем Я ищу в официальном документе nuget Целевые рамки и обнаружил, что Windows действительно является зарезервированным полем как Поддерживаемые рамки :

enter image description here

Надеюсь, это поможет.

0 голосов
/ 19 января 2019

A образец был бы полезен, или хотя бы упомянул, какую версию NuGet.exe вы использовали (вы пытались загрузить последнюю версию?).Я создал ту же структуру каталогов, что и вы, и использовал образец в верхней части страницы документации .nuspec для содержимого файла .nuspec, заполнив только 4 обязательных элемента, которые он перечисляет, и добавив абсолютноничего больше.Вот мой вывод:

C:\git\test\pptest> nuget pack -verbosity detailed
NuGet Version: 4.9.2.5706
Attempting to build package from 'pptest.nuspec'.

Id: pptest
Version: 1.0.0
Authors: zivkan
Description: testing
Dependencies: None

Added file '[Content_Types].xml'.
Added file '_rels/.rels'.
Added file 'content/first.cs.pp'.
Added file 'content/Windows/second.cs.pp'.
Added file 'package/services/metadata/core-properties/373c9fa8025c4ee49217861072d632ae.psmdcp'.
Added file 'pptest.nuspec'.

Successfully created package 'C:\git\test\pptest\pptest.1.0.0.nupkg'.

Итак, все, что я могу сказать, это «это работает для меня».

Для справки, вот мой полный файл .nuspec, а не то, что я представляю, что он добавляетчто-нибудь полезное для этого ответа

<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
    <metadata>
        <!-- Required elements-->
        <id>pptest</id>
        <version>1.0.0</version>
        <description>testing</description>
        <authors>zivkan</authors>

        <!-- Optional elements -->
        <!-- ... -->
    </metadata>
    <!-- Optional 'files' node -->
</package>
...