Execução de Java [RESOLVIDO]

1. Execução de Java [RESOLVIDO]

Daniel Atilio
Daniel Atilio

(usa openSUSE)

Enviado em 20/04/2012 - 11:16h

Bom dia a todos, sou novo no fórum... apesar de usar o Linux desde meus 15 anos (o openSUSE desde meus 16), nunca tinha feito o cadastro no VOL, mas sempre entrei aqui para achar algumas soluções... Meu problema é o seguinte, sempre compilei e executei java pelo Geany no Linux, mas migrei para o KDEvelop, e uso o terminal para a compilação e execução.
Quando dou o comando javac aplicacao.java, não é retornado nenhuma mensagem de erro, já quando dou o comando java aplicacao.java, ele retorna o seguinte erro:

"Exception in thread "main" java.lang.NoClassDefFoundError: splash/java
Caused by: java.lang.ClassNotFoundException: splash.java
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: splash.java. Program will exit."

Percebi que em cada aplicação java ele da erros diferentes, mas pelo geany, ele compila e executa normalmente, será que a versão do meu java?

atilio@linux-6lho:~/> java -version
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.1) (suse-3.1-x86_64)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)

Agradeço desde já.
Abraços e um ótimo fim de semana.



  


2. Re: Execução de Java [RESOLVIDO]

José Mário
miura 787

(usa Ubuntu)

Enviado em 20/04/2012 - 11:30h

Este erro é típico da configuração do classpath.

Para evitar, qdo for dar o comando pra executar o java, insira o caminho completo da aplicação.

exemplo!

java /home/projetos/aplicação.class

Veja que executo o .class que é gerado após compilar o arquivo .java.

exemplo!

javac /home/projetos/aplicação.java

Poste o resultado!


3. Re: Execução de Java [RESOLVIDO]

Luis R. C. Silva
luisrcs

(usa Linux Mint)

Enviado em 20/04/2012 - 11:33h

Daniel Atilio escreveu:
"Exception in thread "main" java.lang.NoClassDefFoundError: splash/java
Caused by: java.lang.ClassNotFoundException: splash.java
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: splash.java. Program will exit."


Isso é erro de programação. A classe splash.java não existe ou está com erro de direcionamento. Verifique as linhas do seu código: 217, 205, 321, 294 e 266. Pode ser que o erro está só em uma linha.


4. Re: Execução de Java [RESOLVIDO]

Daniel Atilio
Daniel Atilio

(usa openSUSE)

Enviado em 20/04/2012 - 11:48h

rei_astro escreveu:
Isso é erro de programação. A classe splash.java não existe ou está com erro de direcionamento. Verifique as linhas do seu código: 217, 205, 321, 294 e 266. Pode ser que o erro está só em uma linha.


Bom dia amigo... então, meu código nem chega a tantos números de linhas, esse projeto eu fiz ano passado, e pelo geany executa normalmente, ai estava fazendo alguns testes via terminal. Abaixo segue meu código

"import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class splash extends JFrame
{

private JLabel splash_lbl;
private ImageIcon splash_img;

public splash() {
setLayout(null);
splash_img = new ImageIcon("imagens/splash_screen.png");
splash_lbl = new JLabel(splash_img);
splash_lbl.setBounds(0,0,700,300);

add(splash_lbl);
}

public void dispose(){
new fatal();
super.dispose();
}
public static void main(String arg[])
{
splash s = new splash();
s.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
s.setSize(700,300);
s.setLocationRelativeTo(null); //deixa janela no centro
s.setUndecorated(true); //tira a barra de titulos
s.setVisible(true);
try { Thread.sleep (3000); } catch (InterruptedException ex) {} //esperando 3 segundos
s.dispose();
}

}"


miura 787 escreveu:

Este erro é típico da configuração do classpath.

Para evitar, qdo for dar o comando pra executar o java, insira o caminho completo da aplicação.

exemplo!

java /home/projetos/aplicação.class

Veja que executo o .class que é gerado após compilar o arquivo .java.

exemplo!

javac /home/projetos/aplicação.java

Poste o resultado!


"Tentei executar o class, deu o seguinte erro:

atilio@linux-6lho:~/Trabalho/Java/Projeto Fatal/programa> java /home/atilio/Trabalho/Java/Projeto\ Fatal/programa/splash.class
Exception in thread "main" java.lang.NoClassDefFoundError: /home/atilio/Trabalho/Java/Projeto Fatal/programa/splash/class
Caused by: java.lang.ClassNotFoundException: .home.atilio.Trabalho.Java.Projeto Fatal.programa.splash.class
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: /home/atilio/Trabalho/Java/Projeto Fatal/programa/splash.class. Program will exit."


5. Re: Execução de Java [RESOLVIDO]

José Mário
miura 787

(usa Ubuntu)

Enviado em 20/04/2012 - 12:46h

"Tentei executar o class, deu o seguinte erro:

atilio@linux-6lho:~/Trabalho/Java/Projeto Fatal/programa> java /home/atilio/Trabalho/Java/Projeto\ Fatal/programa/splash.class
Exception in thread "main" java.lang.NoClassDefFoundError: /home/atilio/Trabalho/Java/Projeto Fatal/programa/splash/class
Caused by: java.lang.ClassNotFoundException: .home.atilio.Trabalho.Java.Projeto Fatal.programa.splash.class
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: /home/atilio/Trabalho/Java/Projeto Fatal/programa/splash.class. Program will exit."

Esta linha me chamou a atenção!

Exception in thread "main" java.lang.NoClassDefFoundError: /home/atilio/Trabalho/Java/Projeto Fatal/programa/splash/class

Note o fim da linha ** /splash/class **

o compilador deve ter interpretado o ponto como se fosse uma barra...

Tente então o comando sem o .class só com o nome do arquivo.

atilio@linux-6lho:~/Trabalho/Java/Projeto Fatal/programa> java /home/atilio/Trabalho/Java/Projeto\ Fatal/programa/splash

Poste o resultado!




6. Re: Execução de Java [RESOLVIDO]

Daniel Atilio
Daniel Atilio

(usa openSUSE)

Enviado em 20/04/2012 - 13:21h

miura 787 escreveu:
Esta linha me chamou a atenção!

Exception in thread "main" java.lang.NoClassDefFoundError: /home/atilio/Trabalho/Java/Projeto Fatal/programa/splash/class

Note o fim da linha ** /splash/class **

o compilador deve ter interpretado o ponto como se fosse uma barra...

Tente então o comando sem o .class só com o nome do arquivo.

atilio@linux-6lho:~/Trabalho/Java/Projeto Fatal/programa> java /home/atilio/Trabalho/Java/Projeto\ Fatal/programa/splash

Poste o resultado!



Então miura, tentei, olha o resultado:

atilio@linux-6lho:~> java /home/atilio/Trabalho/Java/Projeto\ Fatal/programa/splash
Exception in thread "main" java.lang.NoClassDefFoundError: /home/atilio/Trabalho/Java/Projeto Fatal/programa/splash
Caused by: java.lang.ClassNotFoundException: .home.atilio.Trabalho.Java.Projeto Fatal.programa.splash
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: /home/atilio/Trabalho/Java/Projeto Fatal/programa/splash. Program will exit.

Abraços.


7. Re: Execução de Java [RESOLVIDO]

José Mário
miura 787

(usa Ubuntu)

Enviado em 20/04/2012 - 16:54h

Daniel Atilio escreveu:

Então miura, tentei, olha o resultado:

atilio@linux-6lho:~> java /home/atilio/Trabalho/Java/Projeto\ Fatal/programa/splash
Exception in thread "main" java.lang.NoClassDefFoundError: /home/atilio/Trabalho/Java/Projeto Fatal/programa/splash
Caused by: java.lang.ClassNotFoundException: .home.atilio.Trabalho.Java.Projeto Fatal.programa.splash
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: /home/atilio/Trabalho/Java/Projeto Fatal/programa/splash. Program will exit.

Abraços.



O arquivo splash.class foi gerado qdo vc executou o javac?

Poste aqui o resultado do comando:

ls -la /home/atilio/Trabalho/Java/Projeto Fatal/programa/splash.*


8. Re: Execução de Java [RESOLVIDO]

Daniel Atilio
Daniel Atilio

(usa openSUSE)

Enviado em 23/04/2012 - 09:34h

miura 787 escreveu:

O arquivo splash.class foi gerado qdo vc executou o javac?

Poste aqui o resultado do comando:

ls -la /home/atilio/Trabalho/Java/Projeto Fatal/programa/splash.*


Segue abaixo a linha de saida:

atilio@linux-6lho:~/Trabalho/Java/Projeto Fatal/programa> ls -la splash.*
-rw-r--r-- 1 atilio users 1296 Abr 20 11:46 splash.class
-rw-r--r-- 1 atilio users 945 Ago 26 2011 splash.java



9. RE:Execução de Java

Vanderson Diniz
VandersonDiniz

(usa Debian)

Enviado em 23/04/2012 - 11:06h

Olá Daniel.
Algumas observações

"já quando dou o comando java aplicacao.java"
O correto seria "java aplicacao"

Você está usando alguma estrutura de diretórios???
Caso esteja,acho que vai ter que mudar a forma de compilar.

java -classpath ...




10. Re: Execução de Java [RESOLVIDO]

José Mário
miura 787

(usa Ubuntu)

Enviado em 23/04/2012 - 12:05h

Só mais uma tentativa!

Eu estou desconfiado desta pasta que tem um espaço no nome (Projeto" "Fatal), sendo assim vamos fazer o seguinte!

Copie seu arquivo .class para a pasta /home/seuusuario

execute o comando:

java /home/seuusuario/arquivo

Poste o resultado!


11. Re: Execução de Java [RESOLVIDO]

Daniel Atilio
Daniel Atilio

(usa openSUSE)

Enviado em 23/04/2012 - 13:08h

stifloucura escreveu:

Olá Daniel.
Algumas observações

"já quando dou o comando java aplicacao.java"
O correto seria "java aplicacao"

Você está usando alguma estrutura de diretórios???
Caso esteja,acho que vai ter que mudar a forma de compilar.

java -classpath ...



Pior que não estou usando nenhuma arquitetura mesmo =/.

miura 787 escreveu:

Só mais uma tentativa!

Eu estou desconfiado desta pasta que tem um espaço no nome (Projeto" "Fatal), sendo assim vamos fazer o seguinte!

Copie seu arquivo .class para a pasta /home/seuusuario

execute o comando:

java /home/seuusuario/arquivo

Poste o resultado!


Muito obrigado miura, mas também da erro, inclusive até um programinha hello world, da erro =/... acho que deve ser minha vesão do jdk com meu terminal, a ligação entre os dois, pois a compilação é normal (já compilei pelo terminal, e executei pelo geany), só a execução mesmo que ta com bug... Acho que vou executar e compilar via Geany mesmo, valeu gente.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts