Estou tentando construir um aplicativo .Net que requer uma versão específica do .Net SDK, a saber:"version": "2.2.107"
Uma atualização recente do apt atualizou a versão .Net SDK instalada para a versão mais recente disponível, que é 2.2.300
.
É possível instalar várias versões do mesmo SDK?
Posso ter várias versões secundárias do SDK instaladas, conforme mostrado aqui
$ dotnet --list-sdks
2.1.700 [/usr/share/dotnet/sdk]
2.2.300 [/usr/share/dotnet/sdk]
Estou tentando evitar ter que desinstalar minha versão instalada atual apenas para criar este aplicativo.
Como observação, a página de download da Microsoft não fornece instruções para instalar uma versão específica, o que suspeito ser um bug. Os comandos mostrados sempre instalarão a versão mais recente, mesmo que você acesse essa página clicando na versão que realmente deseja instalar.
https://dotnet.microsoft.com/download/linux-package-manager/ubuntu18-04/sdk-2.2.107
Todo gerenciador de pacotes, como APT ou RPM, lida com a versão mais recente (e apenas a mais recente) do pacote. Aplica-se a pacotes .Net Core, portanto, você não pode ter uma versão mais antiga e mais recente do pacote ao mesmo tempo. A Microsoft preparou um script para instalar binários .Net Core (.Net Core, ASP.NET Core SDKs e Runtimes) sem gerenciadores de pacotes. Você pode baixar este script aqui:
https://dot.net/v1/dotnet-install.sh
Com este script, você pode especificar qual versão deseja instalar (opção -v ou –version) e onde deseja instalar os binários (opções -i ou –install-dir).
O script é muito sofisticado e pode ser executado com muito mais opções. Especifique “—help” com a primeira execução para ler sobre isso. Aviso: o script adicionará a pasta de instalação à variável de ambiente $PATH atual, mas não ao arquivo de perfil do seu shell. Você deve fazer isso manualmente.
O problema é com o gerenciador de pacotes que desinstala a versão mais antiga antes de instalar a mais recente. Você pode usar scripts de instalação de botnet fornecidos pela Microsoft para buscar e instalar pacotes binários dotnet independentemente do gerenciador de pacotes. Todas as instruções podem ser encontradas aqui: https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-install-script