lunes, 28 de marzo de 2005

Java, Jena, Xerces y CLASSPATH

Hoy me propuse ejecutar una prueba con Eclipse y Jena...llevo 2 horas y no lo he conseguido...

Etapas:

1.-En primer lugar, Eclipse no arrancaba porque había borrado la versión 1.5 de Java, el sistema tenía la 1.4.0 y Eclipse requería 1.4.2 o superiores. En realidad, Eclipse debería funcionar ya que carga de forma local a partir del directorio que he creado para el curso. Sin embargo, no sé porqué, pero al tener una versión vieja de Java no le gustaba y daba error al arrancar. Rebusqué por todos los sitios que pude para borrar todo rastro de Java. Acabé eliminándolo del registro a pedal y renombrando los ficheros "java.exe" y "javaw.exe" de C:/Windows/System32...lo que es increíble es la cantidad de basura que he visto...realmente Windows es una gran variable global que va cogiendo cada vez más basura...en fin, al final lo conseguí, y una vez que no había rastro de Java, Eclipse arrancó tirando del directorio preparado para el curso.

2.- El siguiente problema fue que no tenía configuradas las Jars que necesitaba Jena. Tuve que ir metiéndolas en "preferencias-->build path --> add external jars". El problema es que me daba un error "raro" al ejecutarse con la clase "Logger". Por supuesto, cualquier cosa menos intuitivo. Acabé encontrando la solución en google.

3.- Finalmente, me dio un error del tipo "java.lang.NoSuchFieldError: actualValueType" que al principio me dejó a cuadros...luego, con ayuda de google llegué a la FAQ y parece que es por usar una versión de xerces vieja...y que hay que configurar para usar la que utiliza Jena en lugar de la predefinida...problema: cómo sé cuál es la que está usando Eclipse? He probado hasta a quitar las librerías predefinidas de Java y nada...mañana intentaré crear un fichero "build.xml" y hacerlo con "ant" a ver si así tengo más control sobre el Classpath.

CONCLUSIÓN. Muchas veces, en informática, las cosas más sencillas se convierten en las más complicadas...y cada vez es más difícil hacer cosas sencillas...