簡體   English   中英

在Java 9模塊中找不到Derby驅動程序

[英]Derby driver not found in Java 9 module

我正在嘗試使用Java 9模塊連接到內置的Derby數據庫(嵌入模式)。 我的模塊依賴於java.sql ,但我不確定在哪里放置Derby驅動程序。

這是我的module-info.java

module mymodule {
    requires java.sql;
}

這是模塊中無法執行的Main.java代碼:

public static void main(String[] args) {

...
    Connection conn;
    try {
        conn = DriverManager.getConnection("jdbc:derby:mysampledb");
        Statement s = conn.createStatement();
        s.executeUpdate("create table testtable (" +
            "id VARCHAR(256), " +
            "value VARCHAR(256)) ");
        s.close();

    }
    catch (SQLException e) {
        System.out.println("Error connecting " + e);
    }
}

這編譯很好,但不執行。

java -cp derbyjars --module-path out -m mymodule/foo.Main

Error connecting java.sql.SQLException: No suitable driver found for jdbc:derby:mysampledb

如何添加數據庫驅動程序? 這是使用-cp選項嗎? 我已將所有derby jar放在文件夾derbyjars ,並將其傳遞給-cp選項。 有沒有其他方法讓模塊看到驅動程序?

-cp參數接受各個jar名稱。 不是包含jar的文件夾的名稱。 (謝謝@BryanPendleton)。

我將命令改為下面的命令,它有效:

java -cp "derbyjars/*" --module-path out -m mymodule/foo.Main

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM