Não foi possível localizar nem carregar a classe principal <classe>
Me sinto como um noob de novo.
Mas vamo lá...
Eu estava com a máquina virtual de 32-bits, e fui instalar a de 64-bits para fazer uns testes.
Mas, por algum motivo eu *quebrei* o java.
Toda classe que eu tento executar, da esse erro, não consigo mais nem executar o hello world mais!
[img]http://javafree.uol.com.br/files_user/files/4/54/40/quebrei%20o%20java.png[/img]
alguém sabe o que eu fiz??
ou melhor, alguém sabe como eu conserto isso?
O que eu achei mais estranho é: Ele da esse erro com toda e qualquer classe, como se o arquivo não existisse.
mas se eu tentar executar um arquivo jar
ele funciona normalmente..
E pelo Netbeans eu também consigo executar, só pela linha de comando (do DOS) não funciona.
public class Classe{ public static void main (String[] args) { System.out.println("Quebrei o java!"); } }
java -jar MeuArquivo.jar
Douglas Eric
Curtidas 0
Respostas
Douglas Eric
28/09/2011
[quote="sekkuar"]Me sinto como um noob de novo.
Mas vamo lá...
Eu estava com a máquina virtual de 32-bits, e fui instalar a de 64-bits para fazer uns testes.
Mas, por algum motivo eu *quebrei* o java.
Toda classe que eu tento executar, da esse erro, não consigo mais nem executar o hello world mais!
[img]http://javafree.uol.com.br/files_user/files/4/54/40/quebrei%20o%20java.png[/img]
alguém sabe o que eu fiz??
ou melhor, alguém sabe como eu conserto isso?
O que eu achei mais estranho é: Ele da esse erro com toda e qualquer classe, como se o arquivo não existisse.
mas se eu tentar executar um arquivo jar
ele funciona normalmente..
E pelo Netbeans eu também consigo executar, só pela linha de comando (do DOS) não funciona.
já tentou
public class Classe{ public static void main (String[] args) { System.out.println("Quebrei o java!"); } }
java -jar MeuArquivo.jar
java -cp . Classe
GOSTEI 0
Douglas Eric
28/09/2011
[quote="simu"]
já tentou
ou conferiu a variável de ambiente CLASSPATH?
[[]]
funciona com
java -cp . Classe
java -cp . Classe
C:\>echo %CLASSPATH% C:\Program Files\Java\jdk1.7.0\bin
GOSTEI 0
Douglas Eric
28/09/2011
[quote="sekkuar"][quote="simu"]...
funciona com
java -cp . Classe
C:\>echo %CLASSPATH% C:\Program Files\Java\jdk1.7.0\bin
set CLASSPATH=.;%CLASSPATH%
GOSTEI 0
Douglas Eric
28/09/2011
ah entendi, então faltou um bendito "." no classpath?
eu coloquei o bin porque eu estava tentando executar a classe direto da pasta do jdk (para executar com máquinas virtuais diferentes).
agora ficou assim
e funciona!
maldito ponto!
valeu simu!
Não achei essa do ponto em lugar nenhum.
C:\>echo %classpath% .;C:\Program Files\Java\jdk1.7.0\bin
GOSTEI 0
Douglas Eric
28/09/2011
[quote="sekkuar"]ah entendi, então faltou um bendito "." no classpath?
eu coloquei o bin porque eu estava tentando executar a classe direto da pasta do jdk (para executar com máquinas virtuais diferentes).
agora ficou assim
e funciona!
maldito ponto!
valeu simu!
Não achei essa do ponto em lugar nenhum.
A documentação do Java está cada vez mais seguindo os padrões da Oracle: difícil de encontrar o que necessita. (e toda vez que penso que entendi como está organizada, eles mudam tudo)
Mas achei o seguinte link na descrição do comando java:
[url="http://download.oracle.com/javase/7/docs/technotes/tools/windows/classpath.html"][u]Setting the Class Path[/u][/url]
C:\>echo %classpath% .;C:\Program Files\Java\jdk1.7.0\bin
...
The default class path is the current directory. Setting the CLASSPATH variable or using the -classpath command-line option overrides that default, so if you want to include the current directory in the search path, you must include "." in the new settings.
...
[[]]
GOSTEI 0
Douglas Eric
28/09/2011
[quote="simu"]
A documentação do Java está cada vez mais seguindo os padrões da Oracle: difícil de encontrar o que necessita. (e toda vez que penso que entendi como está organizada, eles mudam tudo)
Mas achei o seguinte link na descrição do comando java:
[url="http://download.oracle.com/javase/7/docs/technotes/tools/windows/classpath.html"][u]Setting the Class Path[/u][/url]
Ah, então o problema não foi instalar outra jvm.
Quando eu fui testar, coloquei as classes no jdk1.7.0\bin, e criei o CLASSPATH, que não existia.
Como ele não existia, o padrão é o ".", quando eu criei ele, tirei o padrão, e sem o ponto não funciona.
É a mesma história de criar um construtor que recebe um int, faz o construtor sem argumentos sumir, ai você é obrigado a incluir ele [i]também[/i], o que não precisava fazer se não definisse nenhum construtor.
...
The default class path is the current directory. Setting the CLASSPATH variable or using the -classpath command-line option overrides that default, so if you want to include the current directory in the search path, you must include "." in the new settings.
...
[[]] GOSTEI 0