構建一個使用JDBC連接到MySQL的java應用程序。我有一個編譯我的代碼的ant腳本,然後將它與log4j,junit,libshout-java和mysql jdbc驅動程序一起打包到一個可執行的jar文件中。這一切都適用於Ubuntu 9.10,我的代碼連接到MySQL,我們走了。在solaris上構建一個包含MySQL jdbc的jar
但是,我的生產環境是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數據庫語言環境是solaris上的en_US,但是我的ubuntu mysql數據庫也是en_US。
有人有什麼想法嗎?
我不確定需要什麼其他信息,所以如果您想了解更多信息,請在評論中告訴我。
罐是那些獲得打包
junit-4.8.1.jar
libshout.jar
log4j-1.2.15.jar
mysql-5.1.6.jar
[email protected]:~/ShoutGen-Java$ uname -a
SunOS opensolaris 5.11 snv_111b i86pc i386 i86pc Solaris
的MySQL版本:MySQL的5.1.30
乾杯
馬克
好吧,它在我的ubuntu盒子上運行,並且語言環境設置爲en_AU。但我試了一下,有趣的是得到了相同的消息,但對於en_US語言環境。思考? – 2010-01-10 09:28:42
還檢查mysql連接器存儲的路徑是否包含任何非法字符。在這種情況下,非法角色也可能是罪魁禍首。我已經更新了答案以反映它。 – 2010-01-10 10:01:35
jar的路徑是/ export/home/munderwo/ShoutGen-Java/lib 所以我看不到任何非法字符。感謝您的鏈接和幫助。 – 2010-01-10 10:31:11