У меня консольное приложение .NET Core 2.0. Я могу успешно создать или опубликовать это приложение и запустить его локально. Я также могу успешно создать и опубликовать это приложение в DevOps Azure. Однако, если я создаю приложение в DevOps Azure, я не могу запустить результат.
В Azure DevOps я пытался создать, используя:
dotnet build -c Release -r win-x64 -o app
Это генерирует небольшое количество файлов только с файлами, связанными с проектом. Он не включает в себя все файлы System. *. Dll и т. Д., Которые кажутся чрезмерными для большинства моих случаев. Эта команда прекрасно работает, когда я запускаю ее на своем локальном компьютере, и я могу успешно щелкнуть файл MyApp.exe и запустить мое консольное приложение. Однако, если я запускаю ту же команду в Azure DevOps, генерируемый файл MyApp.exe не будет работать должным образом. Вместо этого он запускается, а затем сразу же выходит. В консольном приложении ничего не печатается. Я не вижу ошибок. Приложение очень простое, включает в себя "try-catch" вокруг всего и имеет Console.ReadLine
в конце. Итак, я думал, что он останется открытым.
Когда я бегу:
dotnet publish -c Release -r win-x64 -o app
Я получаю те же файлы, но с включением всех файлов System. *. Dll и т. Д. На этот раз я заметил, что я могу успешно запустить MyApp.exe, и он ведет себя как ожидалось.
Почему dotnet build ...
работает локально, но я, похоже, не получаю такого же поведения, когда запускаю dotnet build ...
в DevOps Azure. Кажется, я вынужден использовать dotnet publish
. Моя проблема в том, что результирующий файл .zip имеет размер от ~ 500 КБ до 30 МБ. Это большая разница.