Я пытаюсь добавить шаг к нашему процессу CI, который представляет собой скрипт powershell, который автоматически упаковывает и отправляет пакет nuget для проекта .NET standard 2.0 после того, как предыдущий шаг его собрал.Первоначальная команда, которую я использовал, была:
dotnet pack $project.csproj -c $configuration -p:PackageVersion=$version
Это дало мне точный результат проекта, который я хотел.Как видно здесь: пакет dotnet без указания nuspec.
Однако в наших предыдущих пакетах nuget у нас есть важные файлы nuspec, и пакет dotnet по умолчанию его не подберет, даже если оннаходится в том же каталоге, что и файл проекта, он будет сгенерирован по умолчанию.Чтобы обойти эту проблему, я обнаружил, что вы можете указать файл nuspec и обновил команду следующим образом:
dotnet pack $project.csproj -c $configuration -p:PackageVersion=$version -p:NuspecFile=$project.nuspec
Теперь это правильно добавит нужный файл nuspec, но теперь nupkg имеет нежелательное содержимое безПапка lib, похоже, является результатом построения проекта.Как видно здесь: пакет dotnet с указанным файлом nuspec .
- Есть ли способ получить желаемый вывод из первой команды и файл nuspec, указанный во второй команде, просто черезкоманда dotnet pack?Я попробовал --no-build и подробное ведение подробных журналов, чтобы получить больше информации, но пока не повезло.
- Есть ли альтернатива файлу nuspec, которая бы достигла такого же эффекта, например, указание дополнительной информации вфайл проекта и удаление файла nuspec полностью?
Спасибо!