Как удалить раздел зависимостей из файла nuspec в сгенерированном пакете nuget с помощью msbuild 15 - PullRequest
0 голосов
/ 18 октября 2018

Я использую командную строку msbuild v15.8.168.64424 (против 2017.8) для создания пакета nuget для консольного приложения.Я использовал ILMerge для объединения всех зависимостей, поэтому я получаю только один exe-файл без зависимостей.

При выполнении команды

        msbuild project1.csproj /t:build /p:configuration=release /p:IsTool=true

я получаю пакет nuget, но при проверке я нахожуdependencies section.

     <dependencies>
           <group targetFramework=".NETFramework4.5">
            <dependency id="lib1" version="1.3.0" exclude="Build,Analyzers" />
            <dependency id="lib2" version="2.3.0" exclude="Build,Analyzers" />              
          </group>
        </dependencies>

Я хочу, чтобы раздел `зависимости был пуст (потому что я объединил все зависимости).

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

Вопрос:

Как удалить раздел зависимостей из nuspecфайл, который входит в сгенерированный пакет nuget?

1 Ответ

0 голосов
/ 18 октября 2018

Вы можете установить метаданные PrivateAssets="All" в ссылках пакета или проекта (<PackageReference> / <ProjectReference>) в файле csproj, чтобы исключить их как зависимости NuGet.

Обратите внимание, что это изменение требует восстановленияпоэтому выполняйте восстановление NuGet между ними или добавьте -restore к вызову MSBuild.

...