Я создаю Java-приложение, которое использует JDBC для подключения к MySQL. У меня есть ant-скрипт, который компилирует мой код, а затем упаковывает его вместе с log4j, junit, libshout-java и драйвером mysql jdbc в один исполняемый jar. Все это прекрасно работает в Ubuntu 9.10, и мой код подключается к mysql, и все.
Тем не менее, моя рабочая среда будет Solaris (мой комплект разработчика - Ubuntu), и когда я пришел, чтобы собрать и запустить его там, у меня были следующие ошибки.
17 [main] DEBUG com.radiobusi.ShoutGen.ParseConfig - [SQL, SELECT * FROM RadioBusi.RadioBusi_song JOIN RadioBusi.RadioBusi_playlist WHERE RadioBusi_playlist.Name = 'Placebo 2';]
18 [main] DEBUG com.radiobusi.ShoutGen.ParseConfig - this is able to be broken up[SQL, SELECT * FROM RadioBusi.RadioBusi_song JOIN RadioBusi.RadioBusi_playlist WHERE RadioBusi_playlist.Name = 'Placebo 2';]
78 [main] ERROR com.radiobusi.ShoutGen - An error occured instantiating the class ShoutGen
java.lang.ExceptionInInitializerError
at com.mysql.jdbc.Util.stackTraceToString(Util.java:351)
at com.mysql.jdbc.Util.<clinit>(Util.java:116)
at com.mysql.jdbc.NonRegisteringDriver.parseURL(NonRegisteringDriver.java:672)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:277)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at com.radiobusi.ShoutGen.PlayList.<init>(Unknown Source)
at com.radiobusi.ShoutGen.ShoutGen.<init>(Unknown Source)
at com.radiobusi.ShoutGen.ShoutGen.main(Unknown Source)
Caused by: java.lang.RuntimeException: Can't load resource bundle due to underlying exception java.util.MissingResourceException: Can't find bundle for base name com.mysql.jdbc.LocalizedErrorMessages, locale en_AU
at com.mysql.jdbc.Messages.<clinit>(Messages.java:60)
... 9 more
Caused by: java.util.MissingResourceException: Can't find bundle for base name com.mysql.jdbc.LocalizedErrorMessages, locale en_AU
at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1521)
at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1260)
at java.util.ResourceBundle.getBundle(ResourceBundle.java:715)
at com.mysql.jdbc.Messages.<clinit>(Messages.java:58)
... 9 more
Exception in thread "main" java.lang.NullPointerException
at com.radiobusi.ShoutGen.ShoutGen.main(Unknown Source)
Мой язык баз данных mysql - это en_US на солярисе, но моя база данных ubuntu mysql - это также en_US.
У кого-нибудь есть идеи?
Я не уверен, какая другая информация нужна, поэтому, если вам нужна дополнительная информация, просто дайте мне знать в комментариях.
Баночки в упаковке
junit-4.8.1.jar
libshout.jar
log4j-1.2.15.jar
mysql-5.1.6.jar
munderwo@opensolaris:~/ShoutGen-Java$ uname -a
SunOS opensolaris 5.11 snv_111b i86pc i386 i86pc Solaris
Версия MySQL: MySQL 5.1.30
Приветствия
Mark