Estou com um probleminha aqui, recentemente resolvi voltar pro swing (só para praticar mesmo), coloquei uma imagem no projeto e setei no JLabel, só que tá dando uma NullPointerException. Coloquei a imagem dentro de uma pasta, deu o mesmo problema, e até na mesma pasta, o resultado foi o mesmo. Fiz uma pesquisa e não encontrei a solução. Estou usando o Java 16 e o NetBeans 12.5.
PS: Criei o projeto com o Ant. Por exemplo no NetBeans 8.2, não tenho esse tipo de problema. Acho que deve ser algum bug do NetBeans ou do Java.
Não.
Classpath é o caminho onde sua aplicação procura as classes para carregar, você só tem que garantir que sua imagem está no classpath de sua aplicação.
Posta o código de como você está carregando a imagem.
Está usando o getResourceAsStream?
Não estou usando o get ResourceAsString. Estou usando o ImageIcon. Para isso passo o getClass().getResource(“imagem.jpg”). O NetBeans gera esse código.
No momento estou em outro computador, mas sei a estrutura de pastas. No projeto estou desenvolvendo usando o MVC, todas as telas do sistema estou deixando dentro do pacote view. Dentro desse pacote criei uma pasta img e copiei a imagem para lá. E através do NetBeans indiquei onde o arquivo estava, não deu certo, logo em seguida, coloquei o código no construtor da classe, o programa executou normalmente mas não apareceu nenhuma imagem. Só dá problema quando coloco através do NetBeans, que ele gera o código, se você colocar programaticamente não dá erro, mas a imagem não é exibida.
Então eu resolvi copiar as imagens e colocar direto na pasta/pacote view. Fiz pelo help do NetBeans e deu a mesma exceção, ele não consegue localizar o arquivo.
Verdade. Mas você sabe me dizer o porquê que o NetBeans está fazendo isso? Pois tenho aqui nesse computador o NetBeans 8.2 com o Java 8. Tenho um projeto que utilizo o helper do NetBeans e não dá essa exceção.
Não sei, não uso NetBeans, nunca me acostumei com o jeito engessado dele e olha que venho testando desde 2002, até cheguei a usar as derivações dele como o Forté for Java e o Sun One Studio.
Estou usando o Java 16, e baixei a versão mais recente do NetBeans, não estou usando o Java 8. Estou querendo usar as versões mais recentes, principalmente do JavaFX.