.NET CORE在ubuntu1604上运行

    本文主要描述.NET CORE在Ubuntu上“自包含应用”不一来.NET SDK发布(类似于golang的方式)

  1.用rider或者直接用dotnet new方式创建一个项目;可以看到产生了两个文件

 dotnet new 会创建一个最新的 project.json 文件,其中包含生成控制台应用所必需的 NuGet 依赖项。 它还将创建 Program.cs,这是包含应用程序的入口点的基本文件。

 2.vim编辑project.json


A.去除 "type": "platform" 节点(如果以托管代码方式发布,则不用修改)

B.添加runtimes节点,在节点下添加"ubuntu.16.04-x64":{}

3.加载依赖项树

dotnet restore 调用到 NuGet 以恢复依赖项树。 NuGet 分析 project.json 文件、下载文件中所述的依赖项(或从计算机缓存中获取)并编写 project.lock.json 文件。 需要 project.lock.json 文件才可进行编译和运行。

project.lock.json 文件是 NuGet 依赖项和其他描述应用的信息的持久化完整图片集。 此文件由其他工具(如 dotnet build 和 dotnet run)读取,让它们可以使用正确的 NuGet 依赖项和绑定解决方法集处理源代码。

4.

$ dotnet run  编译并运行(当测试使用,可以直接到第五步)

dotnet run 调用 dotnet build 来确保已生成要生成的目标,然后调用 dotnet <assembly.dll> 运行目标应用程序。

5.dotnet build

6.通过dotnet publish发布(发布的时候选着runtimes里面的节点项,如:ubuntu.16.04-x64,如果不选则默认第一个)

7.发布以后进入ConsoleApp1/bin/Debug/netcoreapp1.0/ubuntu.16.04-x64目录下

注意:是特定平台下的库(这儿是ubuntu.16.04-x64)

8.进入后通./运行文件名称

注:这儿的运行文件名称,win平台下是exe,linux下无后缀名

原文地址:https://www.cnblogs.com/flyDream12315/p/6212384.html