Answer
现在,我如何运行我的应用程序?我的理解是,因为它是一个独立的 .NET Core 应用程序,所以我do not需要下载并安装 .NET Core 的任何东西。我的应用程序应该包含它需要的一切。
你是对的。运行可执行文件。
当您创建独立的应用程序时,发布输出“包含启动应用程序所需的完整文件集(包括您的应用程序文件和所有 .NET Core 文件)”。这包括可执行文件。
独立部署示例
这是输出dotnet publish -c release -r ubuntu.14.04-x64
对于一个简单的独立应用程序。将发布目录复制到 Ubuntu 并运行可执行文件。
C:\MyApp\bin\release\netcoreapp1.0\ubuntu.14.04-x64\publish\
...
libsos.so
libsosplugin.so
libuv.so
Microsoft.CodeAnalysis.CSharp.dll
Microsoft.CodeAnalysis.dll
Microsoft.CodeAnalysis.VisualBasic.dll
Microsoft.CSharp.dll
Microsoft.VisualBasic.dll
Microsoft.Win32.Primitives.dll
Microsoft.Win32.Registry.dll
mscorlib.dll
mscorlib.ni.dll
MyApp <------- On Ubuntu, run this executable
MyApp.deps.json and you will see Hello World!
MyApp.dll
MyApp.pdb
MyApp.runtimeconfig.json
sosdocsunix.txt
System.AppContext.dll
System.Buffers.dll
System.Collections.Concurrent.dll
System.Collections.dll
...
C:\MyApp\project.json
{
"buildOptions": {
"debugType": "portable",
"emitEntryPoint": true
},
"dependencies": {},
"frameworks": {
"netcoreapp1.0": {
"dependencies": {
"Microsoft.NETCore.App": "1.0.1"
}
}
},
"runtimes": {
"ubuntu.14.04-x64" : {},
"win10-x64" : {}
}
}
C:\MyApp\Program.cs
public class Program
{
public static void Main(string[] args)
{
System.Console.WriteLine("Hello World!");
}
}
See Also
这个文件 https://learn.microsoft.com/en-us/dotnet/articles/core/deploying/index依赖框架的部署和独立部署之间的区别。