我有一个javafx应用程序,它过去运行得很好。
但是,在我的应用程序中添加了xerial之后,proguard仍然可以正常工作,但是在使用java -jar program.jar命令运行时遇到了以下错误:
18:31:42,161 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [dailyRollingFileAppender] to Logger[ROOT]
18:31:42,161 |-INFO in k.a - End of configuration.
18:31:42,161 |-INFO in j.a@44a0093e - Registering current configuration as safe fallback point
2017-Aug-13 18:31:42.287 [JavaFX Application Thread] ERROR B.c - No suitable driver found for jdbc:sqlite:merchant.db
java.sql.SQLException: No suitable driver found for jdbc:sqlite:merchant.db
at java.sql.DriverManager.getConnection(DriverManager.java:689)
at java.sql.DriverManager.getConnection(DriverManager.java:270)
at B.e.<init>(SQLiteDataSource.java:52)
at B.e.a(SQLiteDataSource.java:61)
at com.datasoft.pay365.merchant.MainApp.start(MainApp.java:94)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$162(LauncherImpl.java:863)
at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$175(PlatformImpl.java:326)
at com.sun.javafx.application.PlatformImpl.lambda$null$173(PlatformImpl.java:295)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$174(PlatformImpl.java:294)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)
at com.sun.glass.ui.gtk.GtkApplication.lambda$null$49(GtkApplication.java:139)
at java.lang.Thread.run(Thread.java:748)sqlite连接的实例化:
protected SQLiteDataSource() {
connection = null;
try {
connection = DriverManager.getConnection("jdbc:sqlite:merchant.db");
this.createTable();
} catch (SQLException e) {
logger.error(e.getLocalizedMessage());
e.printStackTrace();
}
}我真的需要能够运行这个sqlite版本的我的应用程序。我该怎么解决呢?
发布于 2017-08-13 13:04:50
使用当前的类加载器加载驱动程序了吗?
Class.forName("org.sqlite.JDBC");如果是,您的库jar是否包含在您的java调用中,还是与javafx相同的文件夹中,或者加载了自定义类以供主代码访问?
https://stackoverflow.com/questions/45660582
复制相似问题