我正在开发一个 Java 项目,我们希望使用嵌入式数据库,使用 JDBC 进行连接,并使用 Derby 作为数据库。这是一个部署到可执行 JAR 的 Maven 项目。
我已将 Derby 作为对项目的依赖项。我正在使用 Java 1.8、Maven 3.8.0 和 Derby 10.8.3.0。
POM.xml
<!-- Derby for database connection -->
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derby</artifactId>
<version>10.8.3.0</version>
</dependency>
App.java
public class App {
public static void main(String[] args) {
JOptionPane.showMessageDialog(null, "Hello World.");
SampleDB sdb = new SampleDB();
try {
sdb.connectionToDerby();
sdb.sampleDBUsabe();
} catch (SQLException sqle) {
System.out.println(sqle);
}
}
}
SampleDB.java
public class SampleDB {
private Connection conn;
public void connectionToDerby() throws SQLException {
String dbURL = "jdbc:derby:sampledb;create=true";
conn = DriverManager.getConnection(dbURL);
}
public void sampleDBUsabe() throws SQLException {
Statement stmt = conn.createStatement();
//Create Table
stmt.execute("Create Table USERS (id int primary key, name varchar(30))");
...
}
当我执行生成的 .JAR 文件时,出现错误:
$ java -jar target/puzzle.game-0.0.1-SNAPSHOT.jar
java.sql.SQLException: No suitable driver found for jdbc:derby:sampledb;create=true
我怀疑这是由于 Derby 驱动程序不是我的类路径的一部分。有没有办法使用 maven 或 settings.xml 文件来做到这一点,以便在用户运行mvn install目标时自动发生这种情况?
慕妹3242003
海绵宝宝撒
相关分类