Может ли dotnet pack создать пакет nuget без добавления файлов содержимого из других пакетов nuget? - PullRequest
0 голосов
/ 08 ноября 2018

Я пытаюсь настроить пакет библиотек nuget для ядра .net с помощью команды dotnet pack, однако вместо того, чтобы просто включить dll в пакет nuget, добавляется файл содержимого из другого ссылочного nuget (что делает размер файла nuget 9,6 МБ вместо 59 КБ).

Есть ли способ избежать получения файлов и содержимого из других пакетов nuget в проекте библиотеки nuget?

для воспроизведения: Создать ядро ​​библиотеки .net Добавить ссылку на Nuget Hl7.Fhir.Specification.STU3 запустить пакет dotnet

Файл nuspec во вновь созданном пакете nuget покажет, что файл spec.zip рассматривается как содержимое, которое необходимо добавить.

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

1 Ответ

0 голосов
/ 08 ноября 2018

Предложение Питера Вурцингера сработало для меня. Это позор, который он написал как комментарий, а не как ответ, так как он заслуживает повторений. Во всяком случае, это мой csproj

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Hl7.Fhir.Specification.STU3" Version="0.96.0" ExcludeAssets="contentFiles" />
  </ItemGroup>

</Project>

когда я упаковываю, файл bin\Debug\test.1.0.0.nuspec не содержит элементов файла spec.zip, которые существуют, когда я не использую ExcludeAssets.

...