Запретить .NET Core 3.0 создавать EXE-файл по умолчанию

В .NET Core 3.0 в процесс сборки была добавлена ​​небольшая функция. Согласно Майкрософт:

.NET Core теперь по умолчанию создает исполняемые файлы, зависящие от платформы. Это новое поведение для приложений, использующих глобально установленную версию .NET Core.

Я искал, но я не могу найти способ предотвратить это. К сожалению, этот исполняемый файл вызывает у меня проблемы при отправке моего приложения в Cloud Foundry, потому что теперь он думает, что это автономный файл EXE, когда он должен запускать его с dotnet cli, используя файл DLL, созданный для моего приложения.

Есть ли способ предотвратить создание этого EXE-файла по умолчанию?

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


person BrianM    schedule 21.10.2019    source источник
comment
Привет Брайан М. Для свойства UseAppHost можно установить значение false (например, /p:UseAppHost=false в командной строке), и это отключит создание исполняемого файла.   -  person Peter Huene    schedule 21.10.2019
comment
@PeterHuene прав. В качестве альтернативы изменению командной строки вы также можете установить <UseAppHost>false</UseAppHost> в <PropertyGroup> файла .csproj.   -  person vcsjones    schedule 21.10.2019


Ответы (1)


@PeterHuene и @vcsjones отлично ответили на вопрос в своих комментариях выше:

Для свойства UseAppHost можно установить значение false (например, /p:UseAppHost=false в командной строке), и это отключит создание исполняемого файла.

  • Peter Huene 21 окт. #comment103314144_58491492">из комментариев

or

В качестве альтернативы изменению командной строки вы также можете установить <UseAppHost>false</UseAppHost> в .csproj <PropertyGroup>.

  • vcsjones 21 окт. comment103314253_58491492">из комментариев
person BrianM    schedule 12.01.2020
comment
К вашему сведению, этот ответ был предметом метапоста. - person Clonkex; 30.10.2020