Odpověď
Jak nyní spustím svou aplikaci? Chápu to tak, že protože se jedná o samostatnou aplikaci .NET Core, nedělám potřebujete stáhnout a nainstalovat .NET Core cokoliv. Moje aplikace by měla obsahovat vše, co potřebuje.
Máte pravdu. Spusťte spustitelný soubor.
Když vytvoříte samostatnou aplikaci, výstup publikování „obsahuje kompletní sadu souborů (jak soubory vaší aplikace, tak všechny soubory .NET Core) potřebné ke spuštění vaší aplikace.“ To zahrnuje spustitelný soubor.
Příklad samostatného nasazení
Zde je výstup dotnet publish -c release -r ubuntu.14.04-x64
pro jednoduchou samostatnou aplikaci. Zkopírujte publikační adresář do Ubuntu a spusťte spustitelný soubor.
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!");
}
}
Viz také
Tento dokument rozlišuje mezi nasazením závislým na rámci a samostatným nasazením.
Pro spuštění aplikace postupujte podle následujících kroků:
-
Publikujte svou aplikaci jako samostatnou aplikaci:
dotnet publish -c release -r ubuntu.16.04-x64 --self-contained
-
Zkopírujte
publish
složku do počítače Ubuntu -
Otevřete počítačový terminál Ubuntu (CLI) a přejděte do adresáře projektu
-
Poskytněte oprávnění ke spuštění:
chmod 777 ./appname
-
Spusťte aplikaci
./appname
Autor: Harit Kumar
Původní odpověď zde: Jak spustit konzolovou aplikaci .NET Core v systému Linux