使用class.ForName在maven项目中加载ucanaccess

时间:2016-10-28 19:01:53

标签: java maven

使用class.ForName在maven项目中加载ucanaccess

好的,所以我现在完全超出了我的深度。在我开始使用Maven之前,一切都进展顺利,现在它变得如此复杂。 无论如何,我正在尝试使用ucanaccess连接到数据库。

public Statement ConnectorNoInsert(String HospNum,String SName,String FName,String DOB) throws SQLException{
        Preferences userPrefs = Preferences.userNodeForPackage(main.java.Console.TBB_SQLBuilder.class);
        String connectDB ="jdbc:ucanaccess://"+userPrefs.get("PathForDB", null);
        System.out.println("Connection To Database Made  "+userPrefs.get("PathForDB", null));
        Connection conn=DriverManager.getConnection(connectDB);
        Statement st =conn.createStatement();   
        return st;  

我得到的错误是:

ERROR: java.sql.SQLException: No suitable driver found for jdbc:ucanaccess://PhysJava/Physiology.mdb 

所以我在Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");行之上添加了Connection conn。这给了我错误:

unreported exception java.lang.ClassNotFoundException; must be caught or declared to be thrown and the project doesnt compile

我想问题是:如何在maven项目中调用Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");。如果我需要使用ClassLoader,有人可以告诉我如何

1 个答案:

答案 0 :(得分:0)

第一个("没有合适的驱动程序")是运行时错误,第二个("未报告的异常")是编译时错误。错误消息非常明确:" ...必须被捕获或声明被抛出..."从这个意义上修复代码。