使用 dotnet core build/run 最简单的应用程序是什么?
What is the simplest possible app you can build/run with dotnet core?
使用单声道,您的 "hello world" 应用可以 超级 简单:
$ cat << EOF > hi.cs && mcs hi.cs && mono hi.exe
using System;
public class Hello{
public static void Main(){
Console.WriteLine("So simple!");
}
}
EOF
官方dotnet core samples远没有接近那么简单。不需要编译文件,执行文件,它需要:
- 项目元数据,以
project.json
文件的形式
- 运行
dotnet restore
然后 dotnet build
- 输出,不只是一个.exe
我的理解是 dotnet core
应该是 Linux 的 .NET,并且可能试图将 Mono 引入。这是一个正确的假设吗?如果是这样,是 有一个更简单的 hello world 应用程序,可以使用 dotnet core(或其他来自 dotnet 的东西)制作,或者是示例项目,具有多个命令和多文件输出 dotnet 可以提供的最简单的输出?
dotnet
不仅仅是一个编译器和运行时,就像 Mono 一样,它还是一个包管理器和发布平台。而那些其他部分并不意味着是可选的。所以最简单合理的来源确实包括 project.json
和 运行 它需要 dotnet restore
(你不需要 dotnet build
,dotnet run
自动调用)。
如果你真的想避免使用 project.json
(再次,一个坏主意),你将不得不在每一步都与 dotnet
作斗争,你真的不打算这样做.它需要这样的东西:
cat << EOF > Program.cs && dotnet /usr/share/dotnet/sdk/1.0.0-preview2-003121/csc.dll -nologo -r:"/usr/share/dotnet/shared/Microsoft.NETCore.App/1.0.0/System.Private.CoreLib.dll" Program.cs
using System;
public class Program
{
public static void Main()
{
Console.WriteLine("Hello World!");
}
}
EOF
cat << EOF > Program.runtimeconfig.json && dotnet Program.exe
{
"runtimeOptions": {
"framework": {
"name": "Microsoft.NETCore.App",
"version": "1.0.0"
}
}
}
EOF
使用单声道,您的 "hello world" 应用可以 超级 简单:
$ cat << EOF > hi.cs && mcs hi.cs && mono hi.exe
using System;
public class Hello{
public static void Main(){
Console.WriteLine("So simple!");
}
}
EOF
官方dotnet core samples远没有接近那么简单。不需要编译文件,执行文件,它需要:
- 项目元数据,以
project.json
文件的形式 - 运行
dotnet restore
然后dotnet build
- 输出,不只是一个.exe
我的理解是 dotnet core
应该是 Linux 的 .NET,并且可能试图将 Mono 引入。这是一个正确的假设吗?如果是这样,是 有一个更简单的 hello world 应用程序,可以使用 dotnet core(或其他来自 dotnet 的东西)制作,或者是示例项目,具有多个命令和多文件输出 dotnet 可以提供的最简单的输出?
dotnet
不仅仅是一个编译器和运行时,就像 Mono 一样,它还是一个包管理器和发布平台。而那些其他部分并不意味着是可选的。所以最简单合理的来源确实包括 project.json
和 运行 它需要 dotnet restore
(你不需要 dotnet build
,dotnet run
自动调用)。
如果你真的想避免使用 project.json
(再次,一个坏主意),你将不得不在每一步都与 dotnet
作斗争,你真的不打算这样做.它需要这样的东西:
cat << EOF > Program.cs && dotnet /usr/share/dotnet/sdk/1.0.0-preview2-003121/csc.dll -nologo -r:"/usr/share/dotnet/shared/Microsoft.NETCore.App/1.0.0/System.Private.CoreLib.dll" Program.cs
using System;
public class Program
{
public static void Main()
{
Console.WriteLine("Hello World!");
}
}
EOF
cat << EOF > Program.runtimeconfig.json && dotnet Program.exe
{
"runtimeOptions": {
"framework": {
"name": "Microsoft.NETCore.App",
"version": "1.0.0"
}
}
}
EOF