Problemas ao usar o jdom

11 respostas
E

Estou usando um arquivo para utilizar a arvore construida com o jdom, consegui compilar os arquivos que contem classes do jdom, mas nao consigo rodar o .class, da um erro de operacao ilegal no windows relacionado ao arquivo jvm.dll, ou seja, na maquina virtual, sera que vcs podem me ajudar? Eu estou usando o windows 98 e j2sdk1.4.0. :roll:

11 Respostas

marciolx

1 - esse erro muito provavelmente não tem nada a ver com o jdom, você já tentou compilar e rodar um HelloWorld para ver se dá o mesmo erro?
2 - pelo que me lembro o window$98 :twisted: tem um java.exe bem tosco da própria M$ :twisted: , será que não é este java.exe que está sendo chamado ao invés do Java 8) 1.4? digite java -version no seu prompt e veja qual a saída
3 - não sei :?:

E

Eu consigo rodar outros arquivos .class, mas qualquer um que contenha classes do jdom da o mesmo erro! E a versao do java.exe e 1.4.0_02-b02

marciolx

vou testar aqui no window$ 98 :cry: :cry: :cry:
qual a versão do jdom que você está usando, a última?

E

Estou utilizando a versao b8 do jdom.

Daniel_Quirino_Olive

Mais um para a lista de “freak errors”. :slight_smile:
Posta a mensagem de erro em se possível o código que gera tal erro :wink:

E
O primeiro e esse:

import org.jdom.<em>;

import org.jdom.input.SAXBuilder;

import <a href="http://java.io">java.io</a>.</em>;

import java.util.*;

public class jdom{
public static void main(String[] args) throws JDOMException{

System.out.println("Livraria");
   SAXBuilder builder =  new SAXBuilder();

   Document doc = builder.build("c:\XML\projeto\Aplicacao\livraria.xml"); 
  
   Element root = doc.getRootElement();

   List livros = root.getChildren("livro");
   Iterator iterator = livros.iterator();

   while(iterator.hasNext())
   {
      Element livro = (Element) iterator.next();

      System.out.println(livro.getChild("autor").getText());
      System.out.println(livro.getChild("titulo").getText());
   }
}

}
Eu consigo compilar, mas quando vou rodar abre uma janela do windows dizendo que esse programa executou uma operacao ilegal e sera fechado. Nos detalhes diz que o java causou uma falha de pagina invalida no modulo jvm.dll, ai aparece aquele monte de registros que ninguem sabe o que! :frowning:

marciolx

tá parecendo C++ :stuck_out_tongue:

o caminho do arquivo você está montando com duas barras invertidas, assim:

c:\XML\projeto\Aplicacao\livraria.xml

??

eu testei aqui no win98 com o jdom b9 e não deu nenhum erro, você está usando o jdom b8 e o jsdk b2, beta + beta=? será que o problema não pode ser esse?

a variável de ambiente java_home está corretamente definida?

cv1

Dica: se vc precisar, mas se vc precisar MESMO, colocar o caminho completo de um arquivo no código - que já é, por si só, uma das piores coisas que vc pode colocar em código -, pelo menos use uma barra normal:

f = new File("c:/foo/bar/blabla.xml");

Funciona sem problema nenhum, e nao te deixa com dor de cabeca quando vc viu que esqueceu de uma \ e o caractere virou um \n :wink:

E

Vou te contar ja estou ficando de saco cheio! :x
Veja bem eu usei jdom b9 e compilei novamente o arquivo jdom.java e quando fui rodar esta dando outro erro! Vale lembrar que setei o caminho para o jdom.jar certinho, tanto que o programa compila, e na hora de rodar estou dando o comando java -classpath . jdom
O erro e: Exception in thread “main” java.lang.NoClassDefFoundError: org/jdom/input/SAXBuilder
Eu abri o jdom.jar e o caminho da classe SAXBuilder e esse mesmo!

Socorro! :cry:

Rafael_Steil

Na hora de rodar, voce tem que apontar o caminho para o .jar do JDOM tambem…

java -cp .;c:/caminho/do/jdom/jar TesteJDom

Rafael

E

Poxa, Rafael valeu mesmo funcionou!!! :smiley:
Estou muito contente!

Criado 19 de setembro de 2003
Ultima resposta 21 de set. de 2003
Respostas 11
Participantes 5