Criei o jar do meu programinha, mas ele não executa!! já dei uma pesquisada sobre isso mas ainda não consegui resolver, verifiquei o arquivo MANIFEST.MF e está ok, rodei ele pela linha de comando e apareceu o erro : “Não foi possível localizar nem carregar a classe principal sistema.inicio” …
Jar não executa!
35 Respostas
O nome do pacote é “sistema” e o nome da classe é “inicio” (com letra inicial minúscula?)
Sim!
Qual o comando que vc deu? java -jar ou só java?
java -jar
Cola aí o seu manifest e me fala aonde que ele está localizado no jar
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.2
Created-By: 1.7.0_01-b08 (Oracle Corporation)
Class-Path: lib/mysql-connector-java-5.1.13-bin.jar lib/commons-beanut
ils-1.8.0.jar lib/commons-collections-3.2.1.jar lib/commons-digester-
1.8.jar lib/commons-javaflow-20060411.jar lib/commons-logging-1.1.jar
lib/groovy-all-1.5.5.jar lib/iText-2.1.0.jar lib/iTextAsian.jar lib/
jasperreports-3.7.2.jar lib/spring.jar lib/xalan.jar lib/xercesImpl.j
ar lib/xml-apis-ext.jar lib/xml-apis.jar
X-COMMENT: Main-Class will be added automatically by build
Main-Class: sistema.inicio
…
está localizado em META-INF
Cola o código da classe inicio.java
esqueci de dizer q eu uso o NetBeans e nessa classe só tem os menus…
Não tem um método main ?
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.2
Created-By: 1.7.0_01-b08 (Oracle Corporation)
Class-Path: lib/mysql-connector-java-5.1.13-bin.jar lib/commons-beanut
ils-1.8.0.jar lib/commons-collections-3.2.1.jar lib/commons-digester-
1.8.jar lib/commons-javaflow-20060411.jar lib/commons-logging-1.1.jar
lib/groovy-all-1.5.5.jar lib/iText-2.1.0.jar lib/iTextAsian.jar lib/
jasperreports-3.7.2.jar lib/spring.jar lib/xalan.jar lib/xercesImpl.j
ar lib/xml-apis-ext.jar lib/xml-apis.jar
X-COMMENT: Main-Class will be added automatically by build
Main-Class: sistema.inicio
…
está localizado em META-INF
Cara… seu Manifest está certo… só ve aí se o .class está no lugar certo… vc está montando o jar pelo eclipse?
pelo NetBeans!
Você está executando no shell/cmd? se você estiver tentando executar assim… vc está na pasta do jar?
se não… navega até a pasta que ele gerou os jars e executa o comando java -jar nome-do-jar.jar
…executa o comando java -jar nome-do-jar.jar … já fiz isso e apareceu o erro : “Não foi possível localizar nem carregar a classe principal sistema.inicio”
e esse projeto executa no NetBeans sem nenhum problema!
Quando vc roda direto no NetBeans funciona? … cara… minhas idéias acabaram… =/ … a única coisa que pode estar errado aí é o Main não estar na classe setada no Manifest…
Quando vc roda direto no NetBeans funciona? … cara… minhas idéias acabaram… =/ … a única coisa que pode estar errado aí é o Main não estar na classe setada no Manifest…
Foi a primeira coisa que perguntei hehehee, tô só esperando a resposta.
Quando vc roda direto no NetBeans funciona? … cara… minhas idéias acabaram… =/ … a única coisa que pode estar errado aí é o Main não estar na classe setada no Manifest…
Foi a primeira coisa que perguntei hehehee, tô só esperando a resposta.
Opa verdade… hehehehhe
??
o main está sim na classe inicio … não tenho mais idéias também … já tentei de tudo !! 
A Aplicação é muito grande?
Põe ele e o jar gerado como anexo
Bom, depois de muito tentar resolvi criar um novo projeto e importar todas as classes… então quando executei pelo cmd apareceu um erro de imagem … então mudei um pouco o código …
image = ImageIO.read(new File(System.getProperty("user.dir")+"/src/img/pronto.png"));
fundo.setIcon(new ImageIcon(image.getScaledInstance(fundo.getWidth(), fundo.getHeight(), Image.SCALE_DEFAULT)));
para esse que eu encontrei em um fórum…
String Imc = System.getProperty("user.dir") + "/src/img/pronto.png";
ImageIcon imagem = new ImageIcon(Imc);
Image img = imagem.getImage().getScaledInstance(fundo.getWidth(),fundo.getHeight(),Image.SCALE_DEFAULT);
fundo.setIcon(new ImageIcon(img));
… mas, agora a imagem não aparece quando executo o jar,aparece apenas quando executo pelo NetBeans… o que pode ser ??
vai no netbeans em propriedades, botao direito em cima do projeto, e dentro disto no executar, vc tem que por a classe que vai ser a principal, dentro do jar.
acredito que nao esta enxergando o método main.
Bom, depois de muito tentar resolvi criar um novo projeto e importar todas as classes… então quando executei pelo cmd apareceu um erro de imagem … então mudei um pouco o código …
image = ImageIO.read(new File(System.getProperty("user.dir")+"/src/img/pronto.png")); fundo.setIcon(new ImageIcon(image.getScaledInstance(fundo.getWidth(), fundo.getHeight(), Image.SCALE_DEFAULT)));para esse que eu encontrei em um fórum…
String Imc = System.getProperty("user.dir") + "/src/img/pronto.png"; ImageIcon imagem = new ImageIcon(Imc); Image img = imagem.getImage().getScaledInstance(fundo.getWidth(),fundo.getHeight(),Image.SCALE_DEFAULT); fundo.setIcon(new ImageIcon(img));… mas, agora a imagem não aparece quando executo o jar,aparece apenas quando executo pelo NetBeans… o que pode ser ??
esse user.dir … manda ele imprimir no código para ver o que ele está printando
seguinte este problema da imagem como imageicon, já bati cabeça, segue a solução…
ImageIcon iconefizzbuzz = new ImageIcon(getClass().getResource(“fizzbuzz.gif”));
ali na aspas o caminho da imagem
ralphsilver, ele aparece o caminho … está correto!
ImageIcon imagem = new ImageIcon(getClass().getResource(System.getProperty("user.dir") + "/src/img/pronto.png"));
com esse deu erro!!
ImageIcon imagem = new ImageIcon(getClass().getResource(System.getProperty("user.dir") + "/src/img/pronto.png"));com esse deu erro!!
bem nao sei como está, mas isso aqui nao… System.getProperty(“user.dir”) + “/src/img/pronto.png”))
direto o nome da imagem… podes até testar primeiro na mesma pasta um só e depois ir arrumando o caminho da pasta. vlw.
eu coloquei uma String recebendo o caminho e também não deu certo 
como assim string, tente fazer isso aquiImageIcon iconefizzbuzz = new ImageIcon(getClass().getResource(“fizzbuzz.gif”));
colocando a imagem na mesma pasta por exemplo e veja se funciona. uma solução é usar as imagens na mesma pasta do projeto. outro é depois deste teste, criar uma pasta imagens…
aí muda só
ImageIcon iconefizzbuzz = new ImageIcon(getClass().getResource("…/imagens/fizzbuzz.gif"));
ou
ImageIcon iconefizzbuzz = new ImageIcon(getClass().getResource("/imagens/fizzbuzz.gif"));
ou ainda: (acho que o anterior é melhor)
ImageIcon iconefizzbuzz = new ImageIcon(getClass().getResource(“imagens/fizzbuzz.gif”));
este user.dir, ali é que não vejo o porque deve estar atrapalhando.
eu fiz aqui assim e funciona bem.
podes até ver no link que estou divulgando
meu trabalho de jogos,
que é repleto de imagens,
e todas funcionam muito bem diretamente no jar,
acopladas nele mesmo.
antigamente eu só conseguia fazer funcionar, colocando as mesmas no C:/ por exemplo…
inclusive tem sons anexos ao trabalho e todos funcionam bem.
como assim string, tente fazer isso aquiImageIcon iconefizzbuzz =new ImageIcon(getClass().getResource(“fizzbuzz.gif”));colocando a imagem na mesma pasta por exemplo e veja se funciona. uma solução é usar as imagens na mesma pasta do projeto. outro é depois deste teste, criar uma pasta imagens…
aí muda só
ImageIcon iconefizzbuzz =new ImageIcon(getClass().getResource("…/imagens/fizzbuzz.gif"));ou
ImageIcon iconefizzbuzz =new ImageIcon(getClass().getResource("/imagens/fizzbuzz.gif"));ou ainda: (acho que o anterior é melhor)
ImageIcon iconefizzbuzz =new ImageIcon(getClass().getResource(“imagens/fizzbuzz.gif”));este user.dir, ali é que não vejo o porque deve estar atrapalhando.
eu fiz aqui assim e funciona bem.
Imaginei a mesma coisa… essa propriedade deve ser setado pelo netbeans ao executar…
pois é, entendo pois nele funciona e depois fora dele não…
como disse já ‘penei’ um pouco por isso.
mas tá aí a resposta.
conseguiu resolver?
pois é, entendo pois nele funciona e depois fora dele não…como disse já ‘penei’ um pouco por isso.
mas tá aí a resposta.
conseguiu resolver?
Idem… principalmente para aplicações desktop… muita das vezes roda na IDE mas não roda fora!!
entao mas conseguiu resolver, com aquele caminho que passei ali?
ou como fez?
Desculpem pela demora … o problema era que a pasta das bibliotecas tinha q ta dentro da pasta dist e fora dela também ao gerar o jar …
Obrigado pela ajuda 