【发布时间】:2018-08-30 08:03:51
【问题描述】:
我要连接的数据库文件位于:
\ProjectName\src\resources\database\database.db
如果我将我的应用程序捆绑到一个 jar 中,它位于:
\ProjectName\target\ProjectName-0.0.1-SNAPSHOT-jar-with-dependencies.jar\resources\database\database.db
此文件夹位于
C:\Users\用户名\Documents\JavaProjects\
我的代码方法:
private static final String CONNECTION = "jdbc:sqlite:" + System.getProperty("user.dir") + "\\ProjectName-0.0.1-SNAPSHOT-jar-with-dependencies.jar\\resources\\database\\database.db";
try(final Connection connection = DriverManager.getConnection(CONNECTION)) {
final Statement statement = connection.createStatement();
statement.setQueryTimeout(10);
statement.executeUpdate(stmt);
connection.close();
} catch (SQLException e) {
//...
}
如果我双击 ProjectName-0.0.1-SNAPSHOT-jar-with-dependencies.jar 文件,我会得到:
路径 C:\Users\Username\Documents\JavaProjects\ProjectName\target\ProjectName-0.0.1-SNAPSHOT-jar-with-dependencies.jar\resources\database\database.db 不存在。
如果我将连接字符串更改为:
私有静态最终字符串连接 = "jdbc:sqlite::resource\resources\database\database.db";
然后我得到:
路径 C:\Users\Username\Documents\JavaProjects\ProjectName\target:resource 不存在
我使用 maven 和这个依赖:
<dependencies>
<dependency>
<groupId>org.xerial</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>3.7.2</version>
</dependency>
</dependencies>
如何访问 .jar 文件中的 sqlite-database 文件?
【问题讨论】:
标签: java database maven sqlite