Respostas:
Se for um aplicativo dependente da estrutura (o padrão), você o executará dotnet yourapp.dll
.
Se é um aplicativo independente, você o executa usando yourapp.exe
no Windows e ./yourapp
no Unix.
Para obter mais informações sobre as diferenças entre os dois tipos de aplicativos, consulte o artigo Implantação de aplicativos .NET Core no .Net Docs.
dotnet run
. Além disso, onde você olhou? Onde você esperaria essa informação?
dotnet run
funciona da mesma forma para os novos projetos csproj e para o project.json.
dotnet run
, verifique se você está no diretório do projeto, não no diretório da solução.
Você pode facilmente criar um EXE (para Windows) sem usar nenhum comando de criação enigmático. Você pode fazer isso corretamente no Visual Studio.
Você também pode executar seu aplicativo como qualquer outro aplicativo de console, mas somente após a publicação.
Vamos supor que você tenha o aplicativo de console simples chamado MyTestConsoleApp. Abra o console do gerenciador de pacotes e execute o seguinte comando:
dotnet publish -c Debug -r win10-x64
-c flag significa que você deseja usar a configuração de depuração (em outro caso, você deve usar o valor Release) - r flag significa que seu aplicativo será executado na plataforma Windows com arquitetura x64.
Quando o procedimento de publicação terminar, você verá o arquivo * .exe localizado no diretório bin / Debug / publish.
Agora você pode chamá-lo via ferramentas de linha de comando. Então abra a janela do CMD (ou terminal), vá para o diretório em que seu arquivo * .exe está localizado e escreva o próximo comando:
>> MyTestConsoleApp.exe argument-list
Por exemplo:
>> MyTestConsoleApp.exe --input some_text -r true
Com dotnetcore3.0, você pode empacotar toda a solução em um arquivo executável usando a PublishSingleFile
propriedade
-p:PublishSingleFile=True
Executáveis de arquivo único de origem
Um exemplo Self Contained
, Release
OSX executável:
dotnet publish -c Release -r osx-x64 -p:PublishSingleFile=True --self-contained True
Um exemplo Self Contained
, Debug
Linux 64bit executável:
dotnet publish -c Debug -r linux-x64 -p:PublishSingleFile=True --self-contained True
A compilação do Linux é independente da distribuição e eu os encontrei trabalhando no Ubuntu 18.10, CentOS 7.7 e Amazon Linux 2.
Um executável autônomo inclui o Dotnet Runtime e o Runtime não precisa ser instalado em uma máquina de destino. Os executáveis publicados são salvos em:
<ProjectDir>/bin/<Release or Debug>/netcoreapp3.0/<target-os>/publish/
no Linux, OSX e
<ProjectDir>\bin\<Release or Debug>\netcoreapp3.0\<target-os>\publish\
no Windows.
<PublishSingleFile>true</PublishSingleFile>
Usando o CMD, você pode executar um projeto do núcleo .net do console se o SDK do .net core estiver instalado em sua máquina:
Para executar o projeto do console usando a linha de comando do Windows, escolha o caminho específico do seu diretório e digite o seguinte comando
dotnet run