从 JAR 运行时“找不到合适的驱动程序”

Pau*_*osa 5 java ms-access netbeans jar ucanaccess

我开发了一个小游戏,其中用户输入的文本需要发布在 MS Access 数据库中。

它在 NetBeans 中一切正常,但是每当我从 JAR 文件(最终需要交给我的客户)访问它时,它都不会向数据库发布任何内容。事实上,它返回以下错误:

java.sql.SQLException: No suitable driver found for jdbc:ucanaccess://C:\Users\Paul\Desktop\Spelli\RispostiDB.mdb
Run Code Online (Sandbox Code Playgroud)

这是相关代码:

public void postAnsDB()
    {
       String tableName = "Form"+studentGroup +"_"+studentSurname+"_"+studentName+"";

       answerModifier();

       try{

                String strurl="jdbc:ucanaccess://C:\\Users\\Paul\\Desktop\\Spelli\\RispostiDB.mdb";
                Connection conn=DriverManager.getConnection(strurl, "", "");
                Statement stmt=conn.createStatement();

                //Post Student Details to DB 

                String post = "INSERT INTO "+tableName+"(ID, responses, Correct_Response, Valid_Invalid, Marks) VALUES ('"+ansID+"', '"+answer+"', '"+correct+"', '"+valid+"', '"+marks+"');";

                stmt.executeUpdate(post);
            }
        catch(Exception e)
        {
            System.out.println("Exception found in postAnsDB: "+e);
        }
    }
Run Code Online (Sandbox Code Playgroud)

Gor*_*son 1

当您在 NetBeans 中构建项目时,它会dist在项目的主文件夹中创建一个文件夹,将代码的 JAR 文件放入该文件夹中,并放入依赖项(所需组件(例如 UCanAccess、Jackcess、HSQLDB 和 Apache)的 JAR 文件) Commons bits) 放入名为 的子文件夹中lib。您需要确保该lib文件夹被复制到目标计算机并放置在与主 JAR 文件相同的文件夹中。查看此处了解详细信息。