Vocês conhecem conteúdo que é fácil de entender e que mostra capturas de tela que mostram como fazer a configuração do Nimbus?

Qual é o caminho para a pasta em que está o seu JDK?

Nimbus é apenas um Look and Feel do Swing, usa quem quer, ninguém precisa utilizar.
Entenda que um Look and Feel nada mais é do que uma espécie de “tema” que altera a aparência dos componentes gráficos de sua aplicação.

Você seta o Look and Feel de sua aplicação com a classe UIManager através do seguinte método:

UIManager.setLookAndFeel("nome da classe do Look and Feel desejado");

Eu particularmente sempre opto em utilizar o Look and Feel padrão do sistema operacional, assim o usuário estará com uma interface de usuário com um aspecto o qual ele está acostumado, dessa forma:

UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() );

Você pode listar todos os Look and Feels disponíveis com o seguinte código:

import javax.swing.UIManager;

public class ListarTemas {

    public static void main(String[] a) {
        System.out.println("Look and Feels instalados:");
        UIManager.LookAndFeelInfo[] disponiveis = UIManager.getInstalledLookAndFeels();
        for (UIManager.LookAndFeelInfo tema : disponiveis) {
            System.out.println("    " + tema.getClassName());
        }
        System.out.println();

        System.out.println("Look and Feel padrão do Java:");
        System.out.println("    " + UIManager.getCrossPlatformLookAndFeelClassName());
        System.out.println();

        System.out.println("Look and Feel do sistema operacional:");
        System.out.println("    " + UIManager.getSystemLookAndFeelClassName());

    }
}

Na minha máquina (com Java 9) o programa acima mostra a seguinte saída:

Look and Feels instalados:
    javax.swing.plaf.metal.MetalLookAndFeel
    javax.swing.plaf.nimbus.NimbusLookAndFeel
    com.sun.java.swing.plaf.motif.MotifLookAndFeel
    com.sun.java.swing.plaf.windows.WindowsLookAndFeel
    com.sun.java.swing.plaf.windows.WindowsClassicLookAndFeel

Look and Feel padrão do Java:
    javax.swing.plaf.metal.MetalLookAndFeel

Look and Feel do sistema operacional:
    com.sun.java.swing.plaf.windows.WindowsLookAndFeel

Ou seja, em minha máquina eu tenho 5 Look and Feels diferentes e posso setá-los da seguinte forma:

UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel"); // Tema Metal
UIManager.setLookAndFeel("javax.swing.plaf.nimbus.NimbusLookAndFeel"); // Tema Nimbus
UIManager.setLookAndFeel("com.sun.java.swing.plaf.motif.MotifLookAndFeel"); // Tema Motif
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel"); // Tema normal do Windows
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsClassicLookAndFeel"); // Tema clássico do Windows
1 curtida

Olá! Tudo certo?

Olha as vagas de empregos na sua cidade e veja o que pedem.

Se as vagas de Java Jr. ai pedem Spring, estude Spring. Se pedem JSF, estude JSF.

Além do que, você terá um longo caminho antes de ir estudar Spring ou JSF, então eu não iria afobado:

  • Estrutura de decisão (if, else e switch)
  • Laço de repetição (for, while e do while)
  • Orientação a Objetos (Definição, Getters and Setters, Classes Abstratas, Interface, Herança, Polimorfismo, boas práticas)
  • Coleções (List, Map e Set)
  • Generics
  • I/O
  • JDBC
  • Threads (Teoria)
  • HTML
  • CSS
  • JavaScript

Como você esta começando, eu não perderia tempo com o Nimbus, muito menos com Java Desktop (Swing e JavaFX), pois vai demandar muito tempo pra algo que dificilmente terá retorno.

1 curtida

@wldomiciano,

O caminho que eu utilizei na instalação do Java foi C:\Program Files\Java\jdk-12\

@Mike,

Eu digitei programador java júnior no cargo e Teresina, PI no campo cidade, estado ou região no Indeed, mas essa pesquisa mostrou a mensagem que diz que a busca não encontrou nenhum resultado:

A busca vagas de: programador java júnior - Teresina, PI não encontrou nenhum resultado.

Referência: https://www.indeed.com.br/m/jobs?q=programador+java+júnior&l=Teresina%2C+PI&from=searchOnSerp%2Cwhatauto%2Cwhereauto

O que é exigido nas vagas de emprego remoto de Programador Java Júnior que tem menos exigências no Brasil?

Por favor, cite alguns exemplos.

Por favor, me desculpem o nível de determinadas perguntas, talvez eu sou o tipo de estudante que aprenderá ser Programador Java Júnior se eu entrar em um curso online pago ou se eu tiver um professor sentado ao meu lado usando um computador.

@javaflex e @Mike,

Eu não decidi perder tempo estudando o Nimbus, eu postei este tópico sobre o Nimbus para estar preparado para começar meus estudos do Java no livro Java Como Programar 10 edição, quem diz que você está pronto para começar seus estudos do Java nesse livro depois de falar sobre o Nimbus é este livro nos seguintes parágrafos que eu copiei e colei várias vezes nesse tópico:

"A nova aparência e funcionamento do Java Nimbus

O Java vem com uma aparência e comportamento multiplataforma conhecida como Nimbus. Para os programas com as interfaces gráficas de usuário Swing (por exemplo, capítulos 12 e 22), configuramos nossos computadores de teste para usar o Nimbus como a aparência e o comportamento padrão.

Para configurar o Nimbo como o padrão para todos os aplicativos Java, você precisa criar um arquivo de texto chamado swing.properties na pasta lib tanto da sua pasta de instalação do JDK como da sua pasta de instalação do JRE. Insira a seguinte linha do código no arquivo:

swing.defaultlaf=com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel

Para obter informações adicionais sobre a localização dessas pastas de instalação, visite http://docs.oracle.com/javase/7/

docs/webnotes/install/index.html. [Observação: além do JRE autônomo, há um JRE aninhado na pasta de instalação do seu JDK. Se estiver utilizando um IDE que depende do JDK (por exemplo, NetBeans), talvez você também precise inserir o arquivo swing.properties na pasta lib aninhada na pasta jre.]

Agora você está pronto para começar seus estudos do Java. Esperamos que goste do livro"!

É perda de tempo estudar o livro Java Como Programar 10 edição para aprender ser Programador Java Júnior?

É perda de tempo estudar a seguinte apostila da Caelum para aprender ser Programador Java Júnior?

Qual é o curso online pago da Caelum ou Alura que ensina ser Programador Java Júnior?

Já citei exemplos… O meu post anterior diz os conteúdos que as vagas de java júnior no geral pedem.

Talvez em Teresina - PI não tenha vaga de java mesmo, ai você terá que ou migrar de estado ou de linguagem ou desenvolver por conta.

1 curtida

@Mike,

Você disse que eu terei que ou migrar de estado ou de linguagem ou desenvolver por conta.

Porque não procurar vaga de emprego remoto de Programador Java Júnior?

Você pode procurar, mas duvido muito que você vai conseguir algo remoto como Dev Java Jr sem experiência.

1 curtida

@Mike,

Porque você duvida muito que eu vou conseguir algo remoto como Dev Java Jr sem experiência???

Geralmente as empresas só liberam/aceitam trabalho remoto de desenvolvedores experientes.
Como você não tem experiência, costumam assumir que o ideal é trabalhar presencialmente sob a tutela de alguém experiente.

2 curtidas

O @staroski basicamente respondeu o que eu ia postar, então pode considerar a resposta dele como a minha :+1:

1 curtida

A décima edição do Java: Como programar requer ou a versão 7 ou a versão 8 do Java.

Vc instalou a versão 12.

Não há nada de errado em seguir o livro usando a versão 12 e seu aprendizado não será prejudicado.

Mas se preferir seguir o livro à risca, esta é a página de download da versão 8.

Estou falando isso, pois fiz uns testes e vi que o instalador da versão 8 permite que vc especifique caminhos diferentes pro JDK e pro JRE.

Na minha instalação da versão 8, o JDK ficou na pasta

C:\Program Files\Java\jdk1.8.0_201\

E o JRE ficou na pasta

C:\Program Files\Java\jre1.8.0_201\

E para criar os arquivos que o livro pede, vc teria que abrir o Prompt de Comando como administrador.

Para isso, abra o Menu Iniciar, digite CMD. Depois clique em Command Prompt (ou Prompt de Comando) com o botão direito e depois clique em Run as administrator (ou Executar como administrador).

Feito isso, execute os seguintes comandos:

echo swing.defaultlaf=com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel > "C:\Program Files\Java\jdk1.8.0_201\lib\swing.properties"
echo swing.defaultlaf=com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel > "C:\Program Files\Java\jre1.8.0_201\lib\swing.properties"

Já no Java 12, execute apenas o comando abaixo.

echo swing.defaultlaf=com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel > "C:\Program Files\Java\jdk-12\lib\swing.properties"

Observação

Acho que vc interpretou o livro muito ao pé da letra.

Embora ele diga que após configurar o Nimbus vc estará pronto para começar, ele não diz que vc estará pronto APENAS se configurar o Nimbus, entende?

Para começar a estudar Java, vc precisa ter os comandos java e javac devidamente configurados para que vc possa compilar e executar seus programas. Fora isso, o restante é opcional.

1 curtida

Por favor, não continuem postando neste tópico respostas sobre cursos de Java e vagas de emprego Java Júnior, depois eu postarei tópicos sobre esses assuntos, eu perguntei sobre esses assuntos neste tópico que eu criei para conseguir configurar o Nimbus, mas para mim agora é melhor tentar conseguir configurar o Nimbus.

Eu estou tentando configurar o Nimbus segundo o livro Java Como Programar 10 edição dos Deitel, por favor, corrijam os erros que eu fizer.

Está escrito no livro Java Como Programar 10 edição:

"A nova aparência e funcionamento do Java Nimbus

O Java vem com uma aparência e comportamento multiplataforma conhecida como Nimbus. Para os programas com as interfaces gráficas de usuário Swing (por exemplo, capítulos 12 e 22), configuramos nossos computadores de teste para usar o Nimbus como a aparência e o comportamento padrão".

Eu instalei o JDK no Windows que eu estou usando, eu estou usando o Windows 7 Professional.

O livro dos Deitel continua dizendo:

"Para configurar o Nimbo como o padrão para todos os aplicativos Java, você precisa criar um arquivo de texto chamado swing.properties na pasta lib tanto da sua pasta de instalação do JDK como da sua pasta de instalação do JRE. Insira a seguinte linha

do código no arquivo:

swing.defaultlaf=com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel"

Eu criei um arquivo de texto usando o bloco de notas chamado swing.properties, eu copiei e colei este arquivo para a pasta lib na minha pasta de instalação do JDK, a seguinte captura de tela mostram isso:

Eu inseri a seguinte linha de código no arquivo swing.properties,
swing.defaultlaf=com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel, a seguinte captura de tela mostra isto:

O livro dos Deitel diz que para configurar o Nimbo como o padrão para todos os aplicativos Java, você precisa criar um arquivo de texto chamado swing.properties na pasta lib tanto da sua pasta de instalação do JDK como da sua pasta de instalação do JRE.

Eu copiei e colei um arquivo de texto chamado swing.properties na pasta lib na minha pasta de instalação do JDK, mas não existe nenhuma pasta chamada de jre dentro da minha pasta de instalação do JDK.

Como eu devo continuar para conseguir configurar o Nimbus?

Perfeito! É isso mesmo. Como eu disse na minha outra resposta, a pasta do JRE não existe na instalação do Java 12.

@wldomiciano, todos,

O que eu devo fazer para ver se eu consegui configurar corretamente o Nimbus?

@wldomiciano,

Eu executei o comando que você citou para executar no Java 12, a seguinte captura de tela mostra isto:

Como saber se eu configurei corretamente o Nimbus?

Pra saber se deu certo basta criar uma aplicação simples com alguns botões e ver se a aparencia é a do Nimbus.

No final desta página tem uns prints apresentando a aparencia que cada LookAndFeel tem. O quinto item é o do Nimbus.

Só que tem um problema. Fiz uns testes e percebi o seguinte:

  1. Se vc criar o arquivo dentro da pasta lib, nada acontece. Mas se criar dentro da pasta conf (tá do lado da lib), aí sim o sistema reconhece a configuração.

  2. Quando este arquivo está presente a minha aplicação não inicia corretamente, dá erro.

Eu não sei dizer o por quê desse erro estar acontecendo, por isso eu simplesmente exclui o arquivo swing.properties que criei e tudo voltou ao normal.

Um conselho que dou é: confie em nós, o Nimbus define apenas como a aparencia da sua aplicação vai ser, vc não precisa dele pra se tornar um desenvolvedor Java, ele não vai fazer diferença no seu aprendizado, pelo meno não agora. Prossiga seus estudos normalmente com o livro. Existe um mundo de coisas legais pra se aprender ainda, não se prenda à esse único paragrafo do livro, não faça isso consigo mesmo.

1 curtida

@wldomiciano,

Por favor, deixa eu ver se o @staroski conseguiu configurar o Nimbus.

@staroski,

Você conseguiu configurar o Nimbus?

Se sim, por favor, mostre o passo a passo da configuração do Nimbus se possível com capturas de tela.

Mas se você não pode mostrar o passo a passo da configuração do Nimbus com capturas de tela, por favor, mostre sem capturas de tela.

Eu esqueci de perguntar:

O livro dos Deitel diz que para configurar o Nimbo como o padrão para todos os aplicativos Java, você precisa criar um arquivo de texto chamado swing.properties na pasta lib tanto da sua pasta de instalação do JDK como da sua pasta de instalação do JRE.

Eu mostrei para vocês através de captura de tela que não existe nenhuma pasta chamada de jre dentro da pasta de instalação do jdk 12, então é impossível criar um arquivo de texto chamado swing.properties na pasta lib dentro da pasta de instalação do JRE no Java 12 porque a pasta jre não existe no Java 12, eu estou certo?

Se a pasta jre não existe no Java 12, então é impossível configurar o Nimbus no Java 12 porque é impossível criar um arquivo de texto chamado swing.properties na pasta lib dentro da pasta de instalação do JRE no Java 12 porque a pasta jre não existe no Java 12?

Descobri!

Eu fiz mais testes e é o seguinte:

No Java 12 não tem a pasta JRE, mas vc não precisa dela pra fazer funcionar. O que faremos é criar o arquivo swing.properties dentro da pasta conf ao invés da pasta lib.

Para isso, abra o Prompt de Comando como administrador e execute o seguinte comando:

echo swing.defaultlaf=javax.swing.plaf.nimbus.NimbusLookAndFeel> "C:\Program Files\java\jdk-12\conf\swing.properties"

Para saber se funcionou, compile e rode o código abaixo. É um código simples que abre uma pequena janela com quatro botões, a idéia é apenas testar a aparencia dos botões. O código também lista os LookAndFeels disponíveis no sistema.

import java.awt.Dimension;
import java.awt.GridLayout;
import javax.swing.UIManager;
import javax.swing.UIManager.LookAndFeelInfo;
import javax.swing.JFrame;
import javax.swing.JButton;

class Teste {
    public static void main(String... args) {
    	JFrame jframe = new JFrame("Testando LookAndFeels");
		
    	jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		jframe.setLayout(new GridLayout(2, 2));
		jframe.add(new JButton("Botao A"));
		jframe.add(new JButton("Botao B"));
		jframe.add(new JButton("Botao C"));
		jframe.add(new JButton("Botao D"));
	    jframe.setPreferredSize(new Dimension(200, 100));
   		jframe.pack();
	    jframe.setLocationRelativeTo(null);
	    jframe.setVisible(true);
		
        for (LookAndFeelInfo look : UIManager.getInstalledLookAndFeels()) {
			System.out.printf("%20s %s\n", look.getName(), look.getClassName());
        }
    } 
}

Se vc executar este programa sem configurar o Nimbus, isso é o que vc deve enxergar:

Viu como é a aparencia dos botões? Em vermelho eu destaquei a lista dos LookAndFeels que tem no meu Windows.

Depois que vc realizar a configuração do Nimbus, o print abaixo é o que vc deve ver:

Perceba que os botões estão diferentes, há um espaçamento maior entre eles, ficaram mais cinza.

Eu usei os botões porque achei mais facil de codificar e visualizar.

Avise se algo der errado.

1 curtida

Cara, não há o que configurar.
Não precisa criar arquivo swing.properties.
Basta executar o método abaixo ANTES de instanciar sua tela:
UIManager.setLookAndFeel("javax.swing.plaf.nimbus.NimbusLookAndFeel");

O tempo que você está perdendo tentando “configurar o Nimbus” você poderia investir aprendendo a programar.
:wink:

1 curtida