Odpowiedzi:
Jeśli jest to aplikacja zależna od frameworka (domyślnie), uruchamiasz ją dotnet yourapp.dll
.
Jeśli jest to samodzielna aplikacja, uruchamiasz ją yourapp.exe
w systemie Windows i ./yourapp
na Uniksie.
Aby uzyskać więcej informacji o różnicach między tymi dwoma typami aplikacji, zobacz artykuł dotyczący wdrażania aplikacji .NET Core w dokumentacji .Net Docs.
dotnet run
. Poza tym, gdzie spojrzałeś? Gdzie można oczekiwać tych informacji?
dotnet run
działa tak samo w przypadku nowych projektów csproj, jak w przypadku projektu.json.
dotnet run
, upewnij się, że jesteś w katalogu projektu, a nie w katalogu rozwiązań.
Możesz bardzo łatwo utworzyć plik EXE (dla systemu Windows) bez użycia żadnych tajemniczych poleceń kompilacji. Możesz to zrobić bezpośrednio w Visual Studio.
Możesz także uruchomić aplikację tak jak inne aplikacje konsolowe, ale dopiero po opublikowaniu.
Załóżmy, że masz prostą aplikację konsoli o nazwie MyTestConsoleApp. Otwórz konsolę menedżera pakietów i uruchom następujące polecenie:
dotnet publish -c Debug -r win10-x64
-c flaga oznacza, że chcesz użyć konfiguracji debugowania (w innym przypadku powinieneś użyć wartości Release) - flaga r oznacza, że twoja aplikacja zostanie uruchomiona na platformie Windows z architekturą x64.
Po zakończeniu procedury publikowania zobaczysz plik * .exe znajdujący się w katalogu bin / Debug / Publishing.
Teraz możesz zadzwonić za pomocą narzędzi wiersza poleceń. Otwórz okno CMD (lub terminal) i przejdź do katalogu, w którym znajduje się plik * .exe, i napisz następne polecenie:
>> MyTestConsoleApp.exe argument-list
Na przykład:
>> MyTestConsoleApp.exe --input some_text -r true
Za pomocą dotnetcore3.0 można spakować całe rozwiązanie do pliku wykonywalnego z jednym plikiem, używając PublishSingleFile
właściwości
-p:PublishSingleFile=True
Źródło plików wykonywalnych jednego pliku
Przykładem Self Contained
, Release
OSX wykonywalnego:
dotnet publish -c Release -r osx-x64 -p:PublishSingleFile=True --self-contained True
Przykładem Self Contained
, Debug
Linux 64bit wykonywalny:
dotnet publish -c Debug -r linux-x64 -p:PublishSingleFile=True --self-contained True
Kompilacja Linuksa jest niezależna od dystrybucji i znalazłem, że działają na Ubuntu 18.10, CentOS 7.7 i Amazon Linux 2.
Samodzielny plik wykonywalny obejmuje środowisko wykonawcze Dotnet, a środowisko wykonawcze nie wymaga instalacji na komputerze docelowym. Opublikowane pliki wykonywalne są zapisywane w:
<ProjectDir>/bin/<Release or Debug>/netcoreapp3.0/<target-os>/publish/
w systemie Linux, OSX i
<ProjectDir>\bin\<Release or Debug>\netcoreapp3.0\<target-os>\publish\
w systemie Windows.
<PublishSingleFile>true</PublishSingleFile>
Za pomocą CMD możesz uruchomić konsolowy projekt .NET Core, jeśli na twoim komputerze jest zainstalowany .NET Core SDK:
Aby uruchomić projekt konsoli za pomocą wiersza polecenia systemu Windows, wybierz określoną ścieżkę z katalogu i wpisz następujące polecenie
uruchomienie dotnet