我使用构建我的控制台应用程序 dnu build
在我的Mac上命令。输出是 MyApp.dll
。
事实并非如此 MyApp.exe
,我怎么能在Windows上,甚至在Mac上执行它?
代码是:
using System;
class Program
{
public static void Main()
{
Console.WriteLine("Hello from Mac");
}
}
我使用构建我的控制台应用程序 dnu build
在我的Mac上命令。输出是 MyApp.dll
。
事实并非如此 MyApp.exe
,我怎么能在Windows上,甚至在Mac上执行它?
代码是:
using System;
class Program
{
public static void Main()
{
Console.WriteLine("Hello from Mac");
}
}
将其添加到project.json文件中:
"compilationOptions": {
"emitEntryPoint": true
},
它将在Windows上生成MyApp.exe(在bin / Debug中)或其他平台上的可执行文件。
编辑:30/01/2017
这已经不够了。您现在可以在框架相关部署和自包含部署之间进行描述 这里。
简写:
依赖于框架的部署 (.net核心存在于目标系统上)
dotnet MyApp.dll
自包含部署 (所有组件包括.net核心运行时都包含在应用程序中)
"type": "platform"
来自project.jsondotnet build -r win7-x64
MyApp.exe
project.json文件:
{
"version": "1.0.0-*",
"buildOptions": {
"emitEntryPoint": true
},
"frameworks": {
"netcoreapp1.0": {
"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.0.1"
}
}
}
},
"imports": "dnxcore50",
"runtimes": { "win7-x64": {} }
}