Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este tutorial mostra como publicar um aplicativo de console para que outros usuários possam executá-lo. A publicação cria o conjunto de arquivos necessários para executar um aplicativo. Para implantar os arquivos, copie-os para a máquina de destino.
Pré-requisitos
- Este tutorial funciona com a aplicação de consola que crias em Cria uma .NET aplicação de consola.
Publicar o aplicativo
Inicia o Visual Studio.
Abra o projeto HelloWorld que criou em Criar uma aplicação de consola .NET.
Certifica-te de que o Visual Studio está a usar a configuração de compilação Release. Se necessário, altere a configuração de compilação na barra de ferramentas de Debug para Release.
Clique com o botão direito do mouse no projeto HelloWorld (não na solução HelloWorld) e selecione Publicar no menu.
No separador Destino da página Publicar , selecione Pasta e, em seguida, selecione Seguinte.
No separador Destino Específico da página Publicar , selecione Pasta e, em seguida, selecione Seguinte.
Na guia Local da página Publicar , selecione Concluir.
Na página Publicar progresso da criação de perfil , selecione Fechar.
Na guia Publicar da janela Publicar , selecione Publicar.
Abra o Visual Studio Code.
Abra a pasta do projeto HelloWorld que criou em Criar uma aplicação de consola .NET.
Escolha Ver>Terminal no menu principal.
O terminal abre na pasta HelloWorld.
Execute o seguinte comando:
dotnet publishA configuração de compilação padrão é Release, que é apropriada para um site implantado em execução em produção. A saída da configuração de compilação Release tem informações mínimas de depuração simbólica e é totalmente otimizada.
A saída do comando é semelhante ao exemplo a seguir:
Restore complete (1.1s) HelloWorld net10.0 succeeded (7.8s) → bin\Release\net10.0\publish\ Build succeeded in 10.3s
Abra o seu GitHub Codespace que criou em Crie uma aplicação de consola .NET.
Adicione a seguinte linha de código na parte superior de HelloWorld.cs:
#:property PublishAot=falseEsta diretiva de propriedade desativa a compilação nativa antecipada (AOT) e a aplicação utilizará o compilador padrão just-in-time (JIT) em tempo de execução. O resultado publicado dependerá do framework.
No terminal, certifica-te de que estás na pasta de tutoriais .
Execute o seguinte comando:
dotnet publish HelloWorld.csO comando cria um executável independente.
A saída do comando é semelhante ao exemplo a seguir:
Restore complete (0.5s) HelloWorld net10.0 succeeded (4.0s) → artifacts\HelloWorld\ Build succeeded in 5.1s
Inspecionar os arquivos
Por defeito, o processo de publicação cria uma implementação dependente do framework, que é um tipo de implementação em que a aplicação publicada corre numa máquina que tem o runtime .NET instalado. Os utilizadores podem executar a aplicação publicada clicando duas vezes no executável ou emitindo o comando a partir de uma linha de comando.
Nas etapas a seguir, você examinará os arquivos criados pelo processo de publicação.
Em Solution Explorer, selecione Mostrar Todos os Ficheiros.
Na pasta do projeto, expanda bin/Release/{net}/publish. (Onde {net} é a pasta alvo do framework, como net10.0.)
Como mostra a imagem, a saída publicada inclui os seguintes arquivos:
HelloWorld.deps.json
Este é o arquivo de dependências de tempo de execução do aplicativo. Define os componentes .NET e as bibliotecas (incluindo a biblioteca de links dinâmicos que contém a sua aplicação) necessárias para executar a aplicação. Para obter mais informações, consulte arquivos de configuração do Runtime.
HelloWorld.dll
Esta é a versão de implantação dependente do framework da aplicação. Para executar essa biblioteca de vínculo dinâmico, digite
dotnet HelloWorld.dllem um prompt de comando. Este método de execução da aplicação funciona em qualquer plataforma que tenha o runtime .NET instalado.HelloWorld.exe
Esta é a versão executável dependente da estrutura
da aplicação. Para executá-lo, digite HelloWorld.exeem um prompt de comando. O arquivo é específico do sistema operacional.HelloWorld.pdb (opcional para implantação)
Este é o arquivo de símbolos de depuração. Você não é obrigado a implantar esse arquivo junto com seu aplicativo, embora deva salvá-lo no caso de precisar depurar a versão publicada do seu aplicativo.
HelloWorld.runtimeconfig.json
Este é o arquivo de configuração de tempo de execução do aplicativo. Identifica a versão do .NET para a qual a sua aplicação foi construída para correr. Você também pode adicionar opções de configuração a ele. Para obter mais informações, consulte definições de configuração do runtime de .NET.
Por defeito, o processo de publicação cria uma implementação dependente do framework, que é um tipo de implementação em que a aplicação publicada corre numa máquina que tem o runtime .NET instalado. Para executar o aplicativo publicado, você pode usar o arquivo executável ou executar o comando dotnet HelloWorld.dll a partir de um prompt de comando.
Nas etapas a seguir, você examinará os arquivos criados pelo processo de publicação.
Selecione o Explorer na barra de navegação esquerda.
Expandir bin/Release/net10.0/publish.
Como mostra a imagem, a saída publicada inclui os seguintes arquivos:
HelloWorld.deps.json
Este é o arquivo de dependências de tempo de execução do aplicativo. Define os componentes .NET e as bibliotecas (incluindo a biblioteca de links dinâmicos que contém a sua aplicação) necessárias para executar a aplicação. Para obter mais informações, consulte arquivos de configuração do Runtime.
HelloWorld.dll
Esta é a versão de implantação dependente do framework da aplicação. Para executar essa biblioteca de vínculo dinâmico, digite
dotnet HelloWorld.dllem um prompt de comando. Este método de execução da aplicação funciona em qualquer plataforma que tenha o runtime .NET instalado.HelloWorld.exe (HelloWorld no Linux ou macOS.)
Esta é a versão executável dependente da estrutura
da aplicação. O arquivo é específico do sistema operacional. HelloWorld.pdb (opcional para implantação)
Este é o arquivo de símbolos de depuração. Você não é obrigado a implantar esse arquivo junto com seu aplicativo, embora deva salvá-lo no caso de precisar depurar a versão publicada do seu aplicativo.
HelloWorld.runtimeconfig.json
Este é o arquivo de configuração de tempo de execução do aplicativo. Identifica a versão do .NET para a qual a sua aplicação foi construída para correr. Você também pode adicionar opções de configuração a ele. Para mais informações, consulte configurações do ambiente de execução .NET.
Para uma aplicação de ficheiro único, o processo de publicação cria um diretório de artefactos com um ficheiro assembly compilado. A aplicação publicada pode ser executada usando o dotnet comando.
Nas etapas a seguir, você examinará os arquivos criados pelo processo de publicação.
Selecione o Explorer na barra de navegação esquerda.
Expandir artefactos/HelloWorld.
Como mostra a imagem, a saída publicada inclui os seguintes arquivos:
HelloWorld
Esta é a versão executável dependente da estrutura
da aplicação. O arquivo é específico do sistema operacional. O Codespaces corre no Linux, por isso isto é um executável Linux. HelloWorld.deps.json
Este é o arquivo de dependências de tempo de execução do aplicativo. Define os componentes .NET e as bibliotecas (incluindo a biblioteca de links dinâmicos que contém a sua aplicação) necessárias para executar a aplicação. Para obter mais informações, consulte arquivos de configuração do Runtime.
HelloWorld.dll
Esta é a versão de implantação dependente do framework da aplicação. Para executar essa biblioteca de vínculo dinâmico, digite
dotnet HelloWorld.dllem um prompt de comando. Este método de execução da aplicação funciona em qualquer plataforma que tenha o runtime .NET instalado.HelloWorld.pdb (opcional para implantação)
Este é o arquivo de símbolos de depuração. Você não é obrigado a implantar esse arquivo junto com seu aplicativo, embora deva salvá-lo no caso de precisar depurar a versão publicada do seu aplicativo.
HelloWorld.runtimeconfig.json
Este é o arquivo de configuração de tempo de execução do aplicativo. Identifica a versão do .NET para a qual a sua aplicação foi construída para correr. Você também pode adicionar opções de configuração a ele. Para mais informações, verifique configurações de runtime .NET.
Clique com o botão direito e selecione Descarregar... para descarregar ficheiros dos Codespaces para o seu computador local.
Executar o aplicativo publicado
Em Solution Explorer, clique com o botão direito na pasta publicar e selecione Copiar Caminho Completo.
Abra um prompt de comando e navegue até a pasta de publicação . Para fazer isso, digite
cde cole o caminho completo. Por exemplo:cd C:\Projects\HelloWorld\bin\Release\net10.0\publish\Execute o aplicativo usando o executável:
Digite
HelloWorld.exee pressione Enter.Digite um nome em resposta ao prompt e pressione qualquer tecla para sair.
Execute o aplicativo usando o
dotnetcomando:Digite
dotnet HelloWorld.dlle pressione Enter.Digite um nome em resposta ao prompt e pressione qualquer tecla para sair.
No Explorer, clique com o botão direito na pasta publish (Ctrl-clique no macOS) e selecione Abrir no Terminal Integrado.
No Windows ou Linux, execute a aplicação usando o executável.
No Windows, introduza
.\HelloWorld.exee pressione Enter.No Linux, digite
./HelloWorlde pressione Enter.Digite um nome em resposta ao prompt e pressione Enter para sair.
Em qualquer plataforma, execute o aplicativo usando o comando
dotnet:Digite
dotnet HelloWorld.dlle pressione Enter.Digite um nome em resposta ao prompt e pressione Enter para sair.
No Explorador, clique com o botão direito na pasta artefacts/HelloWorld e selecione Abrir no Terminal Integrado.
Executa a aplicação usando o executável. Enter
./HelloWorlde depois prima Enter.Digite um nome em resposta ao prompt e pressione Enter para sair.
Recursos adicionais
- .NET visão geral da publicação de aplicações
dotnet publish- Utilizar o SDK .NET em ambientes de integração contínua (CI)
Recursos de limpeza
O GitHub apaga automaticamente o teu Codespace após 30 dias de inatividade. Se planeia explorar mais tutoriais nesta série, pode deixar o seu Codespace provisionado. Se estiveres pronto para visitar o site .NET para descarregar o SDK .NET, podes apagar o teu Codespace. Para eliminar o seu Codespace, abra uma janela do navegador e navegue até aos seus Codespaces. Vês uma lista dos teus codespaces na janela. Selecione os três pontos (...) na entrada para o espaço de código do tutorial de aprendizagem. Depois seleciona "Eliminar".
Próximos passos
Neste tutorial, você publicou um aplicativo de console. No próximo tutorial, você cria uma biblioteca de classes.