Não consigo executar arquivo .class pelo prompt

23 respostas Resolvido
programaçãojavaerror
W

Olá a todos,

Sou novo no forum.

O que está acontecendo é o seguinte tenho tentando utilizar o prompt para compilar um classe simple que criei em java mas aparece o seguinte erro:

“Não foi possível localizar nem carregar a classe principal minhaclasse.class”

e não consigo visualizar os resultados. O programa compila pelo javac e cria o arquivo .class no diretorio mas toda vez que tento executar aparece esse bendito erro já aconteceu tanto na minha maquina no trabalho como na minha pessoal.

23 Respostas

R

Olá, posta o comando que vc está tentando usar

W

primeiro para compilar eu uso o Javac exemplo1.java

e depois para exibir os resultados uso:

java exemplo1.class

dai aparece o erro “Não foi possível localizar nem carregar a classe principal exemplo1.class”

R

Não se coloca .class
Você não está executando um arquivo exatamente, e sim uma classe. Portanto só coloca o nome da classe que o java vai procurar o arquivo dela.
java exemplo1

W

Rodrigo, tentei conforme você me informou sem colocar o .class no final mas continuar com o mesmo erro.

R

Então vc errou em outra parte também.
Vamos precisar rever tudo. O comando é este.
Poste o código da sua classe, o nome do arquivo dela, o comando que usou para compilar e o nome do arquivo gerado na compilação.

W

Certo OK

o codigo fonte é este:

public class BalancoTrimestral {
public static void main (String[] args) {

int gastosJaneiro = 15000;
	int gastosFevereiro = 23000;
	int gastosMarco = 17000;
	int gastosTrimestre = gastosJaneiro + gastosFevereiro + gastosMarco;
	int mediaMensal = gastosTrimestre/3;
	
	System.out.println(gastosTrimestre);
	System.out.println("Valor da média mensal = " + mediaMensal);
	
}

}

o comando para compilar que utilizei foi este:

C:\Users\willame.alvino\Desktop\Java\3.3>javac BalancoTrimestral.java

o arquivo gerado na pasta apos a compilação foi BalancoTrimestral.class

o comando para exibir foi este:
C:\Users\willame.alvino\Desktop\Java\3.3>java BalancoTrimestral
Erro: Não foi possível localizar nem carregar a classe principal BalancoTrimestral

R

Fiz aqui estes passos e funcionou:
55000
Valor da média mensal = 18333

Deve estar com algum problema no seu classpath

R

Tenta:
java BalancoTrimestral -classpath ‘C:\Users\willame.alvino\Desktop\Java\3.3’

W

Meu classpath esta configurado assim:

%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\htmlconverter.jar;%JAVA_HOME%\jre\lib;%JAVA_HOME%\jre\lib\rt.jar

o path está assim:

%JAVA_HOME%\bin

o java_home assim:

C:\Program Files\Java\jdk1.8.0_131

todos nas variáveis de usuário.

R

sempre recomendo usar nas variáveis globais.
Também nunca configuro meu classpath nas variáveis, pra não deixar fixo.

W

C:\Users\willame.alvino>java BalancoTrimestral -classpath ‘C:\Users\willame.alvino\Desktop\Java\3.3’
Erro: Não foi possível localizar nem carregar a classe principal BalancoTrimestral

C:\Users\willame.alvino>

o erro persiste:

R

Mas vc precisa executar este comando a partir da pasta onde está a classe.

W

Como você configura exatamente seu classpath? Poderia me explicar?

Pois acho que o problema deve ser este mesmo.

R

Simplesmente não configuro.

R

Vc precisa posicionar seu prompt na pasta onde tá o arquivo. E executar de lá

W

Fiz conforme você me informou mas o erro persiste:

R

Dá um dir nesta pasta e manda o print.

W

R
Solucao aceita

O problema é o seu classpath. Testei aqui. Se ele está configurado nas variáveis de ambiente, não adianta nem definir no comando, não funciona.
Deleta sua variável CLASSPATH depois fecha o prompt e abre novamente e tenta de novo só com java BalancoTrimestral

Não esquece de dar ok na janela das variáveis pra salvar. rsrs

W

Putz cara você me salvou era isso mesmo…

retirei a variavel classpath e funcionou. Tu é demais…
nunca iria imaginar que o precisaria deletar o classpath.
Valeu doutor…

R

:+1:

M

acompanhei a discussão inteira kakakaka salvando em pleno 2020 tbm resolveu meu problema :smiley:

S

Não é legal usar variável de ambiente para o classpath.

Ao invés disso, informe ele em linha de comando:

java -classpath <caminho(s)> seu.pacote.SuaClasse
Criado 9 de maio de 2017
Ultima resposta 18 de fev. de 2020
Respostas 23
Participantes 4