• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

javanoob

javac ok , java not so ok

14 mensagens neste tópico

Boas,

Um simples

public class HelloWorld
{
      public static void main(String[] args) 
      {
           System.out.println("Hello, world!");
      }
}

não me está a funcionar.

Compilou bem com o javac mas ao executar com o java da-me um "Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld"

O que está a falhar?

Obrigado!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O nome de ficheiro tem de ser HelloWorld.java se não isso não funciona.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O nome de ficheiro tem de ser HelloWorld.java se não isso não funciona.

Não é por ai!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Aqui executa às mil maravilhas... não colocaste no código mas tens a classe dentro de algum package? É que precisas usar o nome completo da classe.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Aqui executa às mil maravilhas... não colocaste no código mas tens a classe dentro de algum package? É que precisas usar o nome completo da classe.

A ideia era ver se o Java estava a funcionar bem, portanto só fiz mesmo esse código... e compilei com $javac HelloWorld.java executando depois com $java HelloWorld.

La vou eu desinstalar o Java todo...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O teu problema deve ser a CLASSPATH.

Coloca o directório onde está o ficheiro .class na CLASSPATH.

Em Unix, podes fazer

java -cp . HelloWorld

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Remover o Java? Hum... isso parece-me uma solução demasiado radical.

Se estiveres a executar a classe na pasta onde ela está e não tens nenhum package, então não precisas configurar caminho nenhum. Mas sem ver a estrutura do que tens e que comandos estás a executar é complicado arranjar uma solução.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mesmo depois de uma nova instalação do último jdk da sun continuo a zeros...

O problema não deve ser só(?) do CLASSPATH porque se for para o directorio onde tenho os respectivos binários ( javac, java, etc) acontece-me o mesmo, o javac compila sem problemas mas o java dá aquele erro manhoso... o código é aquele mesmo, mais simples não consigo fazer.

Esta é a parte mais chata de se programar em Windows...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu programa em windows e não tenho esses problemas... posso ter um screenshot da tua consola a tentares executar o comando, ou a estrutura de pastas onde tens as classes e como estás a executar o comando? Posso não resolver o problema mas é sempre mais informação que pode ajudar.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Parece que aos poucos vai lá, agora, copiando os ficheiros source para o directorio de instalação do java, já compila e executa bem.

Mas fora desse directorio só consigo correr o java... para o javac funcionar é só por no classpath algo do tipo:

"C:\Program Files\Java\jdk1.6.0_04\bin"

certo?

Ou é preciso mais alguma coisa?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sim será só isso, podes ter de reiniciar o windows mas é só adicionar essa opção.

Mas pelos erros que estás a dizer parece-me que o problema era a forma como estavas a executar o comando.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sim será só isso, podes ter de reiniciar o windows mas é só adicionar essa opção.

Mas pelos erros que estás a dizer parece-me que o problema era a forma como estavas a executar o comando.

Como assim?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Em relação ao windows, por vezes apesar de colocares bem o caminho na variável de ambiente a alteração não fica logo visível, isso acontecia-me bastante quando configurava o msys e mingw.

Quanto ao comando, pelo que descreveste parece que estavas a indicar mal os caminhos, mas posso estar enganado.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Em relação ao windows, por vezes apesar de colocares bem o caminho na variável de ambiente a alteração não fica logo visível, isso acontecia-me bastante quando configurava o msys e mingw.

Quanto ao comando, pelo que descreveste parece que estavas a indicar mal os caminhos, mas posso estar enganado.

Pois, é o que está a acontecer-me agora...

Só consigo trabalhar no directorio bin da instalação do Java, a variável CLASSPATH parece que não está a actualizar, mesmo depois de eu já ter andado por lá a fazer reciclagem :S

Alguma forma de acelerar isto?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora