.NET Core (Português)

From ArchWiki
Jump to navigation Jump to search
Status de tradução: Esse artigo é uma tradução de .NET Core. Data da última tradução: 2019-10-20. Você pode ajudar a sincronizar a tradução, se houver alterações na versão em inglês.

.NET Core é um novo framework de software FOSS da Microsoft para C#, Visual Basic e F#. Ele é projetado para ser multiplataforma, modular e apto para aplicativos modernos, em oposição ao seu predecessor, o .NET Framework.

Instalação

Se você deseja apenas executar aplicativos gerenciados pelo .NET Core, instale o pacote dotnet-runtime.

Para compilar aplicativos com .NET Core, instale dotnet-sdk também.

A Microsoft recomenda usar Visual Studio Code, sua IDE FOSS baseada no Electron, para compilar & depurar aplicativos .NET Core.

Dica: Adicione ~/.dotnet/tools to PATH, do contrário ferramentas de dotnet não vão funcionar a partir do shell.

Instalar várias versões

Você pode instalar várias versões do .NET Core SDK ou do tempo de execução lado a lado usando o script dotnet-install.sh fornecido pelo .NET Foundation. Você pode encontrar a documentação do script aqui.

Por exemplo, esse comando instalaria a versão atual encontrada no canal atual Current em /opt/dotnet:

# ./dotnet-install.sh --install-dir /opt/dotnet -channel Current -version latest

Você pode querer simular a primeira instalação usando a opção -Dryrun.

Uma vez instalado, você pode verificar os SDKs disponíveis:

$ dotnet --list-sdks
2.2.108 [/opt/dotnet/sdk]
3.0.100 [/opt/dotnet/sdk]
$ dotnet --version
3.0.100

Telemetria

Telemetria está habilitada por padrão, mas pode ser desabilitada definindo a variável de ambiente DOTNET_CLI_TELEMETRY_OPTOUT=1.

Solução de problemas

Erro "the required library libhostfxr.so could not be found"

Algumas das ferramentas do SDK dotnet (por exemplo, libman, dotnet-watch etc.) podem esperar que você tenha a variável de ambiente DOTNET_ROOT pré-configurada. Se não for, um erro como este pode ser observado: [1]

A fatal error occurred, the required library libhostfxr.so could not be found.
If this is a self-contained application, that library should exist in [/home/my_user/.dotnet/tools/.store/microsoft.web.librarymanager.cli/1.0.172/microsoft.web.librarymanager.cli/1.0.172/tools/netcoreapp2.1/any/].
If this is a framework-dependent application, install the runtime in the default location [/usr/share/dotnet] or use the DOTNET_ROOT environment variable to specify the runtime location.

A solução é exportar manualmente DOTNET_ROOT no seu shell:

~/.bashrc
export DOTNET_ROOT=/opt/dotnet

O SDK especificado não pôde ser encontrado

Acredita-se que isso seja causado por um conflito entre as bibliotecas SDK de Mono e MSBuild e as do dotnet core. Para corrigir isso, exporte o caminho manualmente no seu shell (substituindo o número da versão conforme necessário), por exemplo:

~/.bashrc
export MSBuildSDKsPath="/opt/dotnet/sdk/2.2.108/Sdks/";

Veja também