打包的 Jar 文件中不存在数据库文件
Database file does not exist in Packed Jar File
我有一个使用 MS access 作为数据库的 JavaFX 项目,在 IntelliJ 中创建可执行 JAR 后,而 运行 在 CMD 中的 jar,我得到以下异常
net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::4.x.x given file does not exist: resource\Account_Record.accdb
at net.ucanaccess.jdbc.UcanaccessDriver.connect(UcanaccessDriver.java:231)
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:677)
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:251)
这表明数据库文件无法通过我的以下操作访问:
Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
conn = DriverManager.getConnection("jdbc:ucanaccess://resource//Account_Record.accdb);
我已经检查了 Jar 文件,是的,它里面有“Account_Record.accdb”,而 运行 IntelliJ IDE 中的 JAR 文件,我没有收到任何错误,但无法使其独立!
UcanAccess 只在文件系统中查找数据库,您必须通过自己的代码提取它
我有一个使用 MS access 作为数据库的 JavaFX 项目,在 IntelliJ 中创建可执行 JAR 后,而 运行 在 CMD 中的 jar,我得到以下异常
net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::4.x.x given file does not exist: resource\Account_Record.accdb
at net.ucanaccess.jdbc.UcanaccessDriver.connect(UcanaccessDriver.java:231)
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:677)
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:251)
这表明数据库文件无法通过我的以下操作访问:
Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
conn = DriverManager.getConnection("jdbc:ucanaccess://resource//Account_Record.accdb);
我已经检查了 Jar 文件,是的,它里面有“Account_Record.accdb”,而 运行 IntelliJ IDE 中的 JAR 文件,我没有收到任何错误,但无法使其独立!
UcanAccess 只在文件系统中查找数据库,您必须通过自己的代码提取它