无需安装.NET Core SDK 就可以运行.NET Core 应用程序.实现了.NET Core 跨平台,这样的操作方法我会为大家详细讲述。
跨平台发布
简单新建一个项目.
mkdir dotnethello
cd dotnethello
dotnet new
dotnet new之后 修改project.json 如下:
{
"version": "1.0.0-*",
"buildOptions": {
"emitEntryPoint": true
},
"dependencies": {
"Microsoft.NETCore.App": {
"type": "platform", //去掉
"version": "1.0.0-rc2-*"
}
},
"frameworks": {
"netcoreapp1.0": {
"imports": "dnxcore50"
}
},
"runtimes":{//加入runtime
"win7-x64": { },
"win7-x86": { },
"osx.10.10-x64": { },
"osx.10.11-x64": { },
"Ubuntu.14.04-x64":{ }
}
}
添加NuGet.Config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="AspNetCI" value="#/F/aspnetcirelease/api/v3/index.json" />
<add key="#" value="#/v3/index.json" />
</packageSources>
</configuration>
dotnet restore
潍坊达内:还原以后就可以编译发布了.
Windows:
这里默认输入 dotnet publish 会发布 win7-x64 .
我们定位到 win7-x64\publish 文件夹,可以直接执行 dotnethello.exe ,无需安装.netcore sdk .
Ubuntu:
我们要发布到linux ubuntu 直接指定 runtime .
dotnet publish -r ubuntu.14.04-x64
把发布文件夹(ubuntu.14.04-x64/publish)拷贝到ubuntu上.
直接就可以执行,不需要安装.netcore sdk,只需.netcore依赖的几个包:
https://github.com/dotnet/cli/blob/rel/1.0.0/Documentation/cli-prerequisites.md
Ubuntu distributions require the following libraries installed:
libunwind8
libunwind8-dev
gettext
libicu-dev
liblttng-ust-dev
libcurl4-openssl-dev
libssl-dev
uuid-dev
unzip
设置文件夹下的执行文件dotnethello 设置好权限以后直接 ./dotnethello
Mac OS:
同理mac os 一样,指定osx runtime.
dotnet publish -r osx.10.10-x64
将 osx.10.10-x64/publish 拷贝到mac os .
OS X 需要安装libssl
OS X requires the following libraries and versions installed:
libssl 1.1
执行dotnethello
经此上述的过程,这样我们无需安装.NET Core SDK 就可以运行.NET Core 应用程序.实现了.NET Core 跨平台.
更多潍坊达内相关资讯,请扫描下方二维码