<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Renato Viegas</title>
    <description>The latest articles on DEV Community by Renato Viegas (@renatoviegas).</description>
    <link>https://dev.to/renatoviegas</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F400667%2Ff640d56f-757e-47ab-a10e-e00e2776ae76.jpeg</url>
      <title>DEV Community: Renato Viegas</title>
      <link>https://dev.to/renatoviegas</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/renatoviegas"/>
    <language>en</language>
    <item>
      <title>[PT-BR] Múltiplas versões do JAVA com SDKMAN!</title>
      <dc:creator>Renato Viegas</dc:creator>
      <pubDate>Sat, 17 Oct 2020 22:07:59 +0000</pubDate>
      <link>https://dev.to/renatoviegas/multiplas-versoes-do-java-com-sdkman-3g4j</link>
      <guid>https://dev.to/renatoviegas/multiplas-versoes-do-java-com-sdkman-3g4j</guid>
      <description>&lt;p&gt;Tem necessidade de manter múltiplas versões do &lt;strong&gt;Java&lt;/strong&gt; instalado no computador?&lt;/p&gt;

&lt;p&gt;Para este fim, softwares de gerenciamento de versões costumam facilitar a vida do desenvolvedor. &lt;/p&gt;

&lt;p&gt;Uma ferramenta que realiza bem esta atividade é o &lt;strong&gt;&lt;em&gt;&lt;a href="https://sdkman.io/" rel="noopener noreferrer"&gt;SDKMAN!&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  O que é o &lt;em&gt;SDKMAN!&lt;/em&gt;?
&lt;/h3&gt;

&lt;p&gt;Conforme a definição encontrada no próprio site:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"SDKMAN! é uma ferramenta para gerenciar versões paralelas de vários &lt;strong&gt;kits de desenvolvimento de software&lt;/strong&gt; na maioria dos sistemas baseados em Unix."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Apesar da ferramenta servir para gerenciar diversos tipos de kits de desenvolvimento ou &lt;strong&gt;SDK (&lt;em&gt;Software Development Kit&lt;/em&gt;)&lt;/strong&gt; como &lt;strong&gt;&lt;em&gt;ant, gradle, maven e outros&lt;/em&gt;&lt;/strong&gt;, neste post focaremos no kit do &lt;strong&gt;Java&lt;/strong&gt;, mais conhecido como &lt;strong&gt;JDK (&lt;em&gt;Java Development Kit&lt;/em&gt;)&lt;/strong&gt;, onde demonstro os comandos básicos para a utilização da ferramenta.&lt;/p&gt;

&lt;h3&gt;
  
  
  Instalação
&lt;/h3&gt;

&lt;p&gt;A instalação dependerá de seu sistema operacional, deixo aqui o link da documentação de instalação da ferramenta &lt;a href="https://sdkman.io/install" rel="noopener noreferrer"&gt;https://sdkman.io/install&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;A versão do &lt;strong&gt;SDKMAN!&lt;/strong&gt; utilizada neste post foi a &lt;strong&gt;5.9.0+555&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Comandos básicos
&lt;/h3&gt;

&lt;p&gt;Veremos como &lt;strong&gt;listar&lt;/strong&gt; as versões da JDK existente, &lt;strong&gt;instalar&lt;/strong&gt;, &lt;strong&gt;verificar&lt;/strong&gt; a versão utilizada atualmente, &lt;strong&gt;alternar&lt;/strong&gt; entre as versões instaladas e &lt;strong&gt;remover&lt;/strong&gt; uma versão.&lt;/p&gt;

&lt;p&gt;Segue a estrutura de comando base do &lt;strong&gt;SDK&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Comando base do SDK:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sdk &amp;lt;comando&amp;gt; &amp;lt;sdk&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Em algumas situações o identificador é necessário:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sdk &amp;lt;comando&amp;gt; &amp;lt;sdk&amp;gt; &amp;lt;identificador&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  :: Listando versões da JDK
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sdk list java
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Uma lista é apresentada com:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Fornecedor&lt;/strong&gt; (&lt;em&gt;Vendor&lt;/em&gt;);&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Uso&lt;/strong&gt; (&lt;em&gt;Use&lt;/em&gt;): Indica se é a versão que está em uso;&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Versão&lt;/strong&gt; (&lt;em&gt;Version&lt;/em&gt;);&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Distribuição&lt;/strong&gt; (&lt;em&gt;Dist&lt;/em&gt;);&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Status&lt;/strong&gt; (&lt;em&gt;Status&lt;/em&gt;): Exibe se está instalado a versão;&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Identificador&lt;/strong&gt; (&lt;em&gt;Identifier&lt;/em&gt;): utilizado para instalar ou remover uma versão.
&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fi.imgur.com%2FyBtnCOu.png"&gt;
&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fi.imgur.com%2FzSVLDjo.png"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Na imagem acima, podemos ver que existem 2 versões da JDK instalada (&lt;strong&gt;11.0.8&lt;/strong&gt; e &lt;strong&gt;8.0.265&lt;/strong&gt;), do fornecedor Java.net, e estou usando no momento a versão do &lt;strong&gt;Java 11&lt;/strong&gt;.&lt;/p&gt;

&lt;h4&gt;
  
  
  :: Instalando uma versão da JDK
&lt;/h4&gt;

&lt;p&gt;Para realizar uma instalação, o comando utilizado é o &lt;strong&gt;&lt;em&gt;sdk install&lt;/em&gt;&lt;/strong&gt;, é necessário informar o identificador da versão.&lt;br&gt;
Segue exemplo de instalação da versão do &lt;strong&gt;java 10&lt;/strong&gt;, da distribuição &lt;strong&gt;&lt;em&gt;open&lt;/em&gt;&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sdk install java 10.0.2-open
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fi.imgur.com%2Fvayjrmp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fi.imgur.com%2Fvayjrmp.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Após a instalação é perguntado se desejar tornar a versão que acabou de instalar como padrão. &lt;/p&gt;

&lt;h4&gt;
  
  
  :: Verificando a versão utilizada atualmente
&lt;/h4&gt;

&lt;p&gt;Caso queira saber a versão da JDK utilizada atualmente, basta executar o comando abaixo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sdk current java
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fi.imgur.com%2FwrFludG.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fi.imgur.com%2FwrFludG.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Executei também a &lt;strong&gt;&lt;em&gt;java --version&lt;/em&gt;&lt;/strong&gt; para confirmar se estava utilizando a versão informada pelo &lt;strong&gt;SDKMAN!&lt;/strong&gt;.&lt;/p&gt;

&lt;h4&gt;
  
  
  :: Alternando entre versões instaladas
&lt;/h4&gt;

&lt;p&gt;Existem duas maneiras para alternar entre versões.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Alternando localmente:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sdk use java 8.0.265-open
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Alternando o Java padrão do Sistema Operacional:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sdk default java 8.0.265-open
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  :: Removendo uma versão instalada
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sdk uninstall java 10.0.2-open
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Conclusão
&lt;/h2&gt;

&lt;p&gt;Então, observamos de maneira simples como consultar, instalar, alternar e remover versões da JDK utilizando o &lt;strong&gt;&lt;em&gt;SDKMAN!&lt;/em&gt;&lt;/strong&gt;, o que pode facilitar muito o dia a dia do desenvolvedor. &lt;/p&gt;

&lt;p&gt;Para um maior aprofundamento poderá consultar a documentação da ferramenta em &lt;a href="https://sdkman.io/" rel="noopener noreferrer"&gt;https://sdkman.io/&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>java</category>
      <category>sdkman</category>
      <category>jdk</category>
      <category>developer</category>
    </item>
  </channel>
</rss>
