目前正在尝试使用作为作业一部分提供给我的sqlite-dbc4-3.8.2-SNAPSHOT.jar
。我试过运行我的主文件,我得到以下错误:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
org.sqlite.JDBC cannot be resolved to a variable
at DbBasic.open(DbBasic.java:54)
at DbBasic.<init>(DbBasic.java:67)
at DbUser.<init>(DbUser.java:40)
at Main.go(Main.java:12)
at Main.main(Main.java:65)
以下是尝试使用JDBC连接和打开数据库的DbBasic
类的一部分:
private Connection getConnection()
// get the connection
{
Connection con = null;
try {
con = DriverManager.getConnection(SQLITE_DATABASE_LOCATION+dbName);
con.setAutoCommit(false);
}
catch (SQLException sqle)
{
notify("Db.getConnection database location ["+SQLITE_DATABASE_LOCATION+"] db name["+dbName+"]", sqle);
};
return con;
} // end of method "getConnection"
private void open()
// "open" the database : actually really setting up the connection and obtaining the metadata about the server
// makes sure that database file is present before trying to establish connection
// otherwise SQLite will create a new, empty database with the name provided
{
File dbf = new File(dbName);
if (dbf.exists() == false)
{
System.out.println("SQLite database file ["+dbName+"] does not exist");
System.exit(0);
};
try {
Class.forName(org.sqlite.JDBC);
con = getConnection();
} catch ( ClassNotFoundException cnfe ) {
notify("Db.Open",cnfe);
};
if (debug) System.out.println("Db.Open : leaving");
} // end of constructor "Open"
我已经尝试添加外部JAR,然后将.jar文件添加到Eclipse中的“Referenced Libraries”中。
我无法理解Class.forName(org.sqlite.JDBC)
以及如何使用我的.jar文件
答案 0 :(得分:0)
虽然帖子相对较旧,OP现在不再对这个问题的解决方案感兴趣,但想到把它作为答案。它可能会帮助遇到这种愚蠢问题的人。这是人们在将Eclipse用作IDE时常犯的错误之一,尝试运行甚至无法编译的代码。
您可以检查Eclipse中的“Problems”视图并修复编译错误,然后尝试编译您的程序。这个问题的明显错误是在使用驱动程序名称时缺少双引号""
。
Class.forName("org.sqlite.JDBC");