В решении Visual Studio у меня есть единственный проект библиотеки .net core 2.0
. И для публикации библиотеки я использую команду dotnet publish -c release
однако это не архивирование папки публикации. Я прочитал проблему 6598 и использую предложенный подход с использованием команды dotnet build
, как показано ниже.
dotnet build ApiRouting.sln /nologo /p:PublishProfile=Release /p:PackageLocation="C:\temp\Routing\package" /p:OutDir="C:\temp\Routing\out" /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /maxcpucount:1 /p:platform="Any CPU" /p:configuration="Release" /p:DesktopBuildPackageLocation="C:\temp\Routing\package\package.zip"
но это тоже не сработало.
Мой проект - это проект aws lambda
, который является проектом библиотеки С #, а не веб-проектом asp.net, поэтому я попытался удалить параметр /p:WebPublishMethod=Package
, но это тоже не сработало.
Вопросы
1> Какие параметры мне нужно передать команде publish
, чтобы она создавала zip-файл папки публикации.
2> В связанном issue 6598
, почему предлагается использовать команду build
вместо publish
когда команда build только строит проект?
(кстати, я могу использовать aws tools for visual studio
и Publish to AWS Lambda
, и он создает zip-файл и развертывает его в AWS непосредственно из Visual Studio. Однако мы используем Jenkins для CI, поэтому я хочу использовать dotnet
cli для создания zip-файла, чтобы jenkins мог выполните эту команду и создайте zip-файл.)