默认情况下防止.NET Core 3.0生成EXE文件

默认情况下防止.NET Core 3.0生成EXE文件,.net,command-line-interface,.net-core-3.0,.net,Command Line Interface,.net Core 3.0,对于.NETCore3.0,在构建过程中添加了一个小功能。据微软称: .NETCore现在默认构建依赖于框架的可执行文件。对于使用全局安装的.NET Core版本的应用程序,此行为是新的 我已经找过了,但是我找不到一个方法来阻止这一切。不幸的是,这个可执行文件在将我的应用程序推送到Cloud Foundry时会给我带来问题,因为它现在认为它是一个独立的EXE文件,而它应该使用为我的应用程序构建的DLL文件使用dotnet cli运行它 有没有办法阻止生成此默认EXE 我总是可以在我的构建过程中添

对于.NETCore3.0,在构建过程中添加了一个小功能。据微软称:

.NETCore现在默认构建依赖于框架的可执行文件。对于使用全局安装的.NET Core版本的应用程序,此行为是新的

我已经找过了,但是我找不到一个方法来阻止这一切。不幸的是,这个可执行文件在将我的应用程序推送到Cloud Foundry时会给我带来问题,因为它现在认为它是一个独立的EXE文件,而它应该使用为我的应用程序构建的DLL文件使用dotnet cli运行它

有没有办法阻止生成此默认EXE


我总是可以在我的构建过程中添加最后一步来删除它,但似乎首先应该有一种方法来防止它。

@peterhune和@vcsjones在他们上面的评论中完美地回答了这个问题:

可以将
UseAppHost
属性设置为false(例如,命令行上的
/p:UseAppHost=false
),这将禁用可执行文件的创建

  • 彼得·休恩19年10月21日18:21

作为命令行更改的替代方法,您还可以在.csproj的
中设置
false

  • vcsjones 10月21日19时25分

你好,布莱恩。可以将
UseAppHost
属性设置为false(例如,在命令行上设置
/p:UseAppHost=false
),这将禁用可执行文件的创建。@peterhune是正确的。作为命令行更改的替代方法,您还可以在.csproj的
中设置
false
。仅供参考,此答案是。