dotnet rundotnet run

Este artigo aplica-se a: ✔️ SDK do .NET Core 2. x e versões posterioresThis article applies to: ✔️ .NET Core 2.x SDK and later versions

NameName

dotnet run – Executa o código-fonte sem qualquer comando de compilação ou inicialização explícito.dotnet run - Runs source code without any explicit compile or launch commands.

SinopseSynopsis

dotnet run [-c|--configuration <CONFIGURATION>] [-f|--framework <FRAMEWORK>]
    [--force] [--interactive] [--launch-profile <NAME>] [--no-build]
    [--no-dependencies] [--no-launch-profile] [--no-restore]
    [-p|--project <PATH>] [-r|--runtime <RUNTIME_IDENTIFIER>]
    [-v|--verbosity <LEVEL>] [[--] [application arguments]]

dotnet run -h|--help

DescriptionDescription

O comando dotnet run fornece uma opção conveniente para executar o aplicativo do código-fonte com um comando.The dotnet run command provides a convenient option to run your application from the source code with one command. Ele é útil para o desenvolvimento iterativo rápido a partir da linha de comando.It's useful for fast iterative development from the command line. O comando depende do dotnet build comando para criar o código.The command depends on the dotnet build command to build the code. Os requisitos para a compilação, como o projeto, devem ser restaurado primeiro, e se aplicam a dotnet run também.Any requirements for the build, such as that the project must be restored first, apply to dotnet run as well.

Os arquivos de saída são gravados no local padrão, que é bin/<configuration>/<target>.Output files are written into the default location, which is bin/<configuration>/<target>. Por exemplo, se você tiver um aplicativo netcoreapp2.1 e executar dotnet run, a saída será colocada em bin/Debug/netcoreapp2.1.For example if you have a netcoreapp2.1 application and you run dotnet run, the output is placed in bin/Debug/netcoreapp2.1. Os arquivos são substituídos conforme necessário.Files are overwritten as needed. Os arquivos temporários são colocados no diretório obj.Temporary files are placed in the obj directory.

Se o projeto especificar várias estruturas, a execução de dotnet run resultará em um erro, a menos que a opção -f|--framework <FRAMEWORK> seja usada para especificar a estrutura.If the project specifies multiple frameworks, executing dotnet run results in an error unless the -f|--framework <FRAMEWORK> option is used to specify the framework.

O comando dotnet run é usado no contexto de projetos, não assemblies compilados.The dotnet run command is used in the context of projects, not built assemblies. Se, em vez disso, você estiver tentando executar uma DLL de aplicativo dependente da estrutura, use dotnet sem um comando.If you're trying to run a framework-dependent application DLL instead, you must use dotnet without a command. Por exemplo, para executar myapp.dll, use:For example, to run myapp.dll, use:

dotnet myapp.dll

Para obter mais informações sobre o dotnet Driver, consulte o tópico CLI (ferramentas de linha de comando) do .net .For more information on the dotnet driver, see the .NET Command Line Tools (CLI) topic.

Para executar o aplicativo, o comando dotnet run resolve as dependências do aplicativo que estão fora do runtime compartilhado por meio do cache NuGet.To run the application, the dotnet run command resolves the dependencies of the application that are outside of the shared runtime from the NuGet cache. Como ele usa as dependências em cache, não recomendamos usar dotnet run para executar aplicativos em produção.Because it uses cached dependencies, it's not recommended to use dotnet run to run applications in production. Em vez disso, crie uma implantação usando o comando dotnet publish e implante a saída publicada.Instead, create a deployment using the dotnet publish command and deploy the published output.

Restauração implícitaImplicit restore

Você não precisa executar dotnet restore o porque ele é executado implicitamente por todos os comandos que exigem a ocorrência de uma restauração, como,,,, dotnet new dotnet build dotnet run dotnet test dotnet publish e dotnet pack .You don't have to run dotnet restore because it's run implicitly by all commands that require a restore to occur, such as dotnet new, dotnet build, dotnet run, dotnet test, dotnet publish, and dotnet pack. Para desabilitar a restauração implícita, use a --no-restore opção.To disable implicit restore, use the --no-restore option.

O dotnet restore comando ainda é útil em determinados cenários em que a restauração explícita faz sentido, como compilações de integração contínua em Azure DevOps Services ou em sistemas de compilação que precisam controlar explicitamente quando a restauração ocorre.The dotnet restore command is still useful in certain scenarios where explicitly restoring makes sense, such as continuous integration builds in Azure DevOps Services or in build systems that need to explicitly control when the restore occurs.

Para obter informações sobre como gerenciar feeds do NuGet, consulte a dotnet restore documentação.For information about how to manage NuGet feeds, see the dotnet restore documentation.

Esse comando oferece suporte às dotnet restore opções quando passadas na forma longa (por exemplo, --source ).This command supports the dotnet restore options when passed in the long form (for example, --source). Opções de formato curto, como -s, não são compatíveis.Short form options, such as -s, are not supported.

OpçõesOptions

  • --

    Delimita os argumentos para dotnet run dos argumentos para o aplicativo que está sendo executado.Delimits arguments to dotnet run from arguments for the application being run. Todos os argumentos após esse delimitador são passados para o aplicativo que está sendo executado.All arguments after this delimiter are passed to the application run.

  • -c|--configuration <CONFIGURATION>

    Define a configuração da compilação.Defines the build configuration. O padrão para a maioria dos projetos é Debug , mas você pode substituir as definições de configuração de compilação em seu projeto.The default for most projects is Debug, but you can override the build configuration settings in your project.

  • -f|--framework <FRAMEWORK>

    Compila e executa o aplicativo usando a estrutura especificada.Builds and runs the app using the specified framework. A estrutura deve ser especificada no arquivo de projeto.The framework must be specified in the project file.

  • --force

    Forçará todas as dependências a serem resolvidas mesmo se última restauração tiver sido bem-sucedida.Forces all dependencies to be resolved even if the last restore was successful. A especificação desse sinalizador é o mesmo que a exclusão do arquivo project.assets.json.Specifying this flag is the same as deleting the project.assets.json file.

  • -h|--help

    Imprime uma ajuda breve para o comando.Prints out a short help for the command.

  • --interactive

    Permite que o comando pare e aguarde a entrada ou uma ação do usuário (por exemplo, para concluir a autenticação).Allows the command to stop and wait for user input or action (for example, to complete authentication). Disponível desde o SDK do .NET Core 3.0.Available since .NET Core 3.0 SDK.

  • --launch-profile <NAME>

    O nome do perfil de inicialização (se houver) a ser usado ao iniciar o aplicativo.The name of the launch profile (if any) to use when launching the application. Os perfis de inicialização são definidos no launchSettings.jsno arquivo e são normalmente chamados Development , Staging e Production .Launch profiles are defined in the launchSettings.json file and are typically called Development, Staging, and Production. Para obter mais informações, consulte trabalhando com vários ambientes.For more information, see Working with multiple environments.

  • --no-build

    Não compila o projeto antes da execução.Doesn't build the project before running. Também define o sinalizador --no-restore implicitamente.It also implicit sets the --no-restore flag.

  • --no-dependencies

    Ao restaurar um projeto com referências de P2P (projeto a projeto), restaura o projeto raiz, não as referências.When restoring a project with project-to-project (P2P) references, restores the root project and not the references.

  • --no-launch-profile

    Não tenta usar launchSettings.json para configurar o aplicativo.Doesn't try to use launchSettings.json to configure the application.

  • --no-restore

    Não executa uma restauração implícita ao executar o comando.Doesn't execute an implicit restore when running the command.

  • -p|--project <PATH>

    Especifica o caminho do arquivo de projeto a ser executado (nome da pasta ou caminho completo).Specifies the path of the project file to run (folder name or full path). Se não é especificado, ele usa como padrão o diretório atual.If not specified, it defaults to the current directory.

  • -r|--runtime <RUNTIME_IDENTIFIER>

    Especifica o runtime de destino para o qual restaurar os pacotes.Specifies the target runtime to restore packages for. Para obter uma lista de RIDs (Identificadores de Runtime), veja o Catálogo de RIDs.For a list of Runtime Identifiers (RIDs), see the RID catalog. -r pequena opção disponível desde o SDK do .NET Core 3,0.-r short option available since .NET Core 3.0 SDK.

  • -v|--verbosity <LEVEL>

    Define o nível de detalhes do comando.Sets the verbosity level of the command. Os valores permitidos são q[uiet], m[inimal], n[ormal], d[etailed] e diag[nostic].Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic]. O valor padrão é m.The default value is m. Disponível desde o SDK do .NET Core 2,1.Available since .NET Core 2.1 SDK.

ExemplosExamples

  • Execute o projeto no diretório atual:Run the project in the current directory:

    dotnet run
    
  • Execute o projeto especificado:Run the specified project:

    dotnet run --project ./projects/proj1/proj1.csproj
    
  • Execute o projeto no diretório atual (o argumento --help neste exemplo é passado para o aplicativo, visto que a opção vazia -- foi usada):Run the project in the current directory (the --help argument in this example is passed to the application, since the blank -- option is used):

    dotnet run --configuration Release -- --help
    
  • Restaure as dependências e as ferramentas para o projeto no diretório atual mostrando apenas a saída mínima e, em seguida, execute o projeto:Restore dependencies and tools for the project in the current directory only showing minimal output and then run the project:

    dotnet run --verbosity m