Desinstalando versões não usadas do .Net Core

Recentemente, precisei realizar a manutenção em um antigo back-end para criar uma nova rota de cadastro, nada de mais. Baixei o projeto para a minha máquina e, na hora de executar, percebi que não tinha o .Net Core necessário instalado. A versão necessária era a 2.1. Tomei até um susto (as pessoas geralmente não gostam de atualizar suas aplicações, afinal em time que está “ganhando” não se mexe né? Aqui poderíamos falar bastante sobre o assunto de versões desatualizadas, mas não vou entrar nesse assunto).


Aqui vale deixar uma informação: o ASP .Net Core até consegue rodar versões anteriores mesmo que a versão da aplicação não esteja instalada na sua máquina, basta você inserir os comandos na sequência:

dotnet restore
dotnet build
dotnet run

O SDK global tentará fazer uma conversão automática do projeto para a versão atual do .NET Core. No entanto, isso pode não funcionar corretamente se o projeto tiver dependências específicas da versão 2.1.


Enfim, fui no prompt e digitei o comando:

dotnet --list-sdks

E, para minha surpresa, outro susto hahaha. Vejam o print abaixo, a quantidade de versões instaladas que eu mantinha. Sendo que é totalmente desnecessário ter várias majors, pois o .Net mantém uma excelente retrocompatibilidade.

É possível usar três comandos para descobrir onde o .NET está instalado: dotnet --list-sdks para SDKs, dotnet --list-runtimes para runtimes e dotnet --info para tudo.

by Microsoft

Recomendo a leitura do artigo da própria Microsoft sobre o assunto de remoção dos sdks do .Net aqui, que mostra como removê-los dos três sistemas operacionais (Windows, Linux e MacOS), e também especificamente sobre runtime ou host. No meu caso, estou usando MacOS mas o desenrolar também se aplica ao Linux.

Então, bora remover esses carinhas daí? A primeira coisa a se fazer é saber quais SDKs você gostaria de remover. Sugiro utilizar o comando dotnet --list-sdks, que fornecerá uma lista de todos SDKs instalados na máquina. Com base nessas informações, podemos remover o SDK usando o seguinte comando:

sudo rm -rf /usr/local/share/dotnet/sdk/{versaoSDK}

// example
sudo rm -rf /usr/local/share/dotnet/sdk/6.0.405

Provavelmente, será solicitada a senha do seu usuário, insira e enter se for Linux ou return no MacOS:

Observe que a versão 6.0.405 sumiu da lista de SDKs. Por fim, repita o processo e remova todas as versões que não precisa. Veja o resultado final:

Outra informação interessante é que liberamos quase 1GB de espaço no disco rígido (HD) somente com a exclusão dos SDKs.

Deixei as versões principais para garantir uma melhor compatibilidade com aplicações futuras. Enfim, espero que isso seja útil para quem precisar. Abraço!


Posted

in

by

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *