[jRuby]problème de CLASSPATH

Le
unbewusst.sein
désolé de poser une question si basique à propos de CLASSPATH.
aujourd'hui j'ai changé de version (jRuby-1.1.RC3 -> jRuby-1.1.3)

et un script très simple de connection à une base de donnée, ne marche
plus il me donne "ClassNotFoundException".

donc, bien sûr j'ai investigué du côté du CLASSPATH mais je ne vois pas
ce qui cloche

le script bash "jruby" chargé de lancer java me donne comme valeur de
l'argument "--classpath" :

From jruby : -classpath =
/opt/jruby/lib/bsf.jar:/opt/jruby/lib/jruby.jar:/opt/jruby/lib/profile.j
ar:.:/opt/jruby-1.1.3/lib/ruby/gems/1.8/gems/jdbc-sqlite3-3.5.8/lib/sqli
te-3.5.8.jar:/opt/jruby-1.1.3/lib/ruby/gems/1.8/gems/jdbc-mysql-5.0.4/li
b/mysql-connector-java-5.0.4-bin.jar

(j'ai ajouté un echo dans le script bash)

donc, j'ai bien le jar "sqlite-3.5.8.jar" avec le bon PATH

ensuite, à l'intérieur de mon script, je "print" deux variables
d'environement :

ENV['JAVA_HOME'] =
/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home
ENV['CLASSPATH'] =
.:/opt/jruby-1.1.3/lib/ruby/gems/1.8/gems/jdbc-sqlite3-3.5.8/lib/sqlite-
3.5.8.jar:/opt/jruby-1.1.3/lib/ruby/gems/1.8/gems/jdbc-mysql-5.0.4/lib/m
ysql-connector-java-5.0.4-bin.jar

ça me semble correct, c'est sans doute pourquoi je patauge

le script lui-même :

require 'java'
require 'rubygems'
require 'jdbc/sqlite3'
module JavaLang
include_package "java.lang"
end

module JavaSql
include_package 'java.sql'
end

puts "ENV['JAVA_HOME'] = #{ENV['JAVA_HOME']}"
puts "ENV['CLASSPATH'] = #{ENV['CLASSPATH']}"

begin
JavaLang::Class.forName("org.sqlite.JDBC").newInstance
[]
rescue JavaLang::ClassNotFoundException
puts "ClassNotFoundException"
rescue JavaSql::SQLException
puts "SQLException"
end

je sèche, et ne vois pas de typo
--
Une Bévue
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Emmanuel Bourg
Le #16469821
Qu'elle est la classe signalée manquante par la ClassNotFoundException ?
unbewusst.sein
Le #16569481
Une Bévue

ça me semble correct, c'est sans doute pourquoi je patauge...



comme je ne trouvais pas...
... je suis revenu à la version précédente de jruby (1.1.RC3) et là ça
roule...

--
Une Bévue
unbewusst.sein
Le #16569601
Emmanuel Bourg
Qu'elle est la classe signalée manquante par la ClassNotFoundException ?



org.sqlite.JDBC

mais bon, apparemment, c'est un pb spécifique à jRuby, pas à java.
si je me souviens bien ça marchait avec jRuby_1.1.RC3 et ça ne marche
plus avec jRuby_1.1.3...
--
Une Bévue
Publicité
Poster une réponse
Anonyme