Meu .jar Não quer abrir me ajuda!

37 respostas
java
T

Olá amigos, sabe quando você faz o projeto da faculdade todinho, pesquisa, se mata cria o .jar e ele não abre? então aconteceu isso comigo… podem me ajudar sobre o que esta ocorrendo?

quando executo o projeto no net beans, com o shift + F6 ele funciona corretamente, o banco de dados também!, mas quando crio o .jar ele nao abre !

37 Respostas

X

Qual erro que aparece? simplesmente nada acontece?

T

exato, nada acontece

X

Mas sua aplicaçao ta usando swing javafx jFrame Joption lago do tipo?

T

sim, muitos

X

Estranho , o meu que estou fazendo estava dando erro que nao estava achando o MainClass, mas quando acontece de simplesmente nao dar erro nas minhas aplicacoes é porque eu nao coloquei a classe main na ide.

T

aparece isso quando tento limpar e construir novamente

Updating property file: C:\Users\julios\Desktop\java\VideoProjeto\build\built-clean.properties
Deleting directory C:\Users\julios\Desktop\java\VideoProjeto\build
C:\Users\julios\Desktop\java\VideoProjeto\nbproject\build-impl.xml:1387: Unable to delete file C:\Users\julios\Desktop\java\VideoProjeto\dist\VideoProjeto.jar
FALHA NA CONSTRUÇÃO (tempo total: 0 segundos)

T

quando clico em construir aparece isso aqui em vermelho

Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

X

O meu esta dando a mesma msg, mas esta rodando normal.

A

Por algum motivo(IDE, sistema operacional, pastas abertas, processo em uso…) o Netfeijões ao limpar esta pasta e reconstruir o projeto não consegue,então feche a IDE, verifique que esta pasta não esteja sendo utilizada por nenhum outro processo no seu sistema, abre o gerenciador de tarefas e mate os processos Java em execução se tiver, abra a IDE novamente recompile e seja feliz :slight_smile:

T

legal, fiz isso consegui, mas o programa insiste em nao abrir

A

Dentro do seu jar tem uma pasta com um arquivo dentro META-INF/MANIFEST.MF dentro do arquivo deve ter uma linha que diz:
Main-Class:
neste main class deve ter o caminho full qualificado até a classe main da sua app, ex:
Main-Class: br.com.seu.pacoteJava.ClasseMain

C

Olá,

Você escreveu muito mas explicou muito pouco.

Seja mais detalhado, mostre o passo a passo que fez.

Leia você mesmo o que escreveu como se fosse outra pessoa, e veja se conseguiria ajudá-lo (a si próprio).

Não somos mágicos ou clarividentes, se não for claro e objetivo, então dificilmente alguém conseguirá ajudá-lo.

Atenciosamente.

T

fiz pelo net beans, limpar e construir

achei o arquivo .mf porem como abro?

A

com qualquer leitor de arquivos, embora tenha uma extesão .mf dentro dele é TXT puro.

T

Manifest-Version: 1.0
X-COMMENT: Main-Class will be added automatically by build

esta assim

A

Este é o conteúdo do arquivo que esta na sua IDE dentro do seu projeto? ou este arquivo esta dentro do jar que você não consegue rodar?

preciso que me mostre o conteúdo do arquivo que esta dentro do seu jar(o que esta tentando rodar).

T

desculpa, mandei o errado.

Eu estou no netbeans então não deve ser dificil achar

A

abre o teu .jar com algum descompactador(winrar) da vida e estara la o arquivo.

T

bom garoto

ta ai

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.9.4
Created-By: 1.7.0_80-b15 (Oracle Corporation)
Class-Path: lib/mysql-connector-java-5.1.23-bin.jar
X-COMMENT: Main-Class will be added automatically by build
Main-Class: controle.Manancial

A

ok isso mesmo, Manancial é a classe main que inicia seu software?

T

sim, Manancial

T

a classe main, chama meu frame principal.

T

no meu frame principal, a parte do codigo, tem um metodo main é normal isso?

//

public static void main(String args[]) {

/* Set the Nimbus look and feel <em>/

//

/</em> If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.

* For details see <a href="http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html">http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html</a>

*/

try {

for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {

if (“Nimbus”.equals(info.getName())) {

javax.swing.UIManager.setLookAndFeel(info.getClassName());

break;

}

}

} catch (ClassNotFoundException ex) {

java.util.logging.Logger.getLogger(Principal.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(Principal.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

} catch (IllegalAccessException ex) {

java.util.logging.Logger.getLogger(Principal.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

} catch (javax.swing.UnsupportedLookAndFeelException ex) {

java.util.logging.Logger.getLogger(Principal.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

}

//

//
/* Create and display the form */
    java.awt.EventQueue.invokeLater(new Runnable() {
        public void run() {
            new Principal().setVisible(true);
            
        }
    });
}
A

executa na linha de commando, abre o CMD do windows, navega até o .jar e digite:

java -jar nomedoseujar.jar posta os erros, outrac oisa esta com a versão correta do java configurada?

executa um java -version para saber também pelo DOS.

T

uncaught error fetching image:

java.lang.nullPoiterException

at sun.awt.image.URLImageSource.getConnction<Unknown SOurce>
    at sun.awt.image.URLImageSource.getDecorder<Unknown SOurce>
T

e mais umas 3 linhas dessa

A

Você deve ter alguma imagem no software?, algum icone que carregue no systray do windows?

enfim, ele não esta localizando essa imagem, Unknown Source --> origem desconhecida.

C

Olá,

Por favor, leia “Packaging and Deploying Desktop Java Applications” (https://netbeans.org/kb/articles/javase-deploy.html).

T

tirei e coloquei todas as imagens… que estranho

A

seu projeto é maven? ou standalone normal? posta o código que adiciona no systray a imagem.

T

eu coloco a imagem como um icone de um label

C

Olá,

Veja o conteúdo do irpf.jar (aplicativo da Declaração do IRPF), basta abrir esse arquivo com seu programa descompactador preferido (e que suporte jar).

E abaixo seu manifest:

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.4
Created-By: 1.7.0_67-b01 (Oracle Corporation)
Main-Class: serpro.ppgd.app.IRPFPGD
Class-Path: lib/batik-awt-util.jar lib/batik-dom.jar lib/batik-svg-dom
.jar lib/batik-svggen.jar lib/batik-util.jar lib/batik-xml.jar lib/co
mmons-beanutils-1.7.jar lib/commons-codec-1.6.jar lib/commons-collect
ions-3.2.1.jar lib/commons-digester-1.8.jar lib/commons-io-2.4.jar li
b/commons-logging-1.0.2.jar lib/forms-1.0.3.jar lib/foxtrot.jar lib/f
reesans.jar lib/gson-2.3.jar lib/iText-2.1.0.jar lib/icepdf-core.jar
lib/icepdf-viewer.jar lib/jasperreports-3.7.2.jar lib/looks-1.3.1.jar
lib/ppgd-formatosext-4.3.0.jar lib/ppgd-gui-beans-4.3.0.jar lib/ppgd
-icones-4.0.jar lib/ppgd-infraestrutura-4.3.0.jar lib/ppgd-negocio-4.
3.0.jar lib/ppgd-persistencia-4.3.0.jar lib/ppgd-pgd-utils-4.3.0.jar
lib/serpro.jar lib/swing-layout-1.0.4.jar lib/swingx-1.6.jar lib/tiny
laf.jar lib/xalan.jar

A

abra no netBeans na parte de arquivos (pode dar um Ctrl+2), abra a pasta do seu projeto, e abra o arquivo “build.xml” dentro da tag project adicone o cod abaixo :
`

<property name="store.jar.name" value="Nome do Projeto"/>  

    <property name="store.dir" value="store"/>  
    <property name="store.jar" value="${store.dir}/${store.jar.name}.jar"/>  

    <echo message="Packaging ${store.jar.name} into a single JAR at ${store.jar}"/>  

    <delete dir="${store.dir}"/>  
    <mkdir dir="${store.dir}"/>  

    <jar destfile="${store.dir}/temp_final.jar" filesetmanifest="skip">  
        <zipgroupfileset dir="dist" includes="*.jar"/>  
        <zipgroupfileset dir="dist/lib" includes="*.jar"/>  

        <manifest>  
            <attribute name="Main-Class" value="${main.class}"/>                  
        </manifest>  
    </jar>  

    <zip destfile="${store.jar}">  
        <zipfileset src="${store.dir}/temp_final.jar"  
        excludes="META-INF/*.SF, META-INF/*.DSA, META-INF/*.RSA"/>  
    </zip>  

    <delete file="${store.dir}/temp_final.jar"/>  

</target> `

salve e dar um limpar e construir…
dai criara uma pasta store no seu projeto com .jar com todas as suas dependencias e abrira em qualquer local e em qualquer sistema operacional com java instalado…

T

aonde ela aparece

A

se estiver falando da pasta store ela fika nos seus projetos do netbeans…

T

pessoal descobri

era esse metodo

private void setIcon() {

setIconImage(Toolkit.getDefaultToolkit().getImage(getClass().getResource("/Imagens/iconteste05.png")));

}

quando eu parei de iniciar ele o erro acabou…

public Principal() {

initComponents();

conecta.conexao();

//setIcon();

Mas então como eu faço pra deixar o icone em todas as minhas janelas? inicio ele somente no metodo main?

T

pois estava criando e iniciando ele em todos os meus jframes

Criado 28 de março de 2016
Ultima resposta 29 de mar. de 2016
Respostas 37
Participantes 5