错误 [stderr](EJB 默认值 - 8)java.lang.ClassNotFoundException:org.sqlite.JDBC
ERROR [stderr] (EJB default - 8) java.lang.ClassNotFoundException: org.sqlite.JDBC
我试图在 j2ee 项目中与 sqlite 数据库建立连接,但我一直收到此错误 "ERROR [stderr] (EJB default -8)java.lang.ClassNotFoundException: org.sqlite.JDBC"。知道我在 java 程序中测试了该方法并且工作正常。
我在 ejb 项目(会话 bean)中有一个连接 class,这里有代码。
public Connection getConnection(){
Connection connection= null;
try {
Class.forName("org.sqlite.JDBC");
String dataFolder = System.getProperty("user.home") + "\AppData\Local";
String b = System.getProperty("user.home") ;
String file = b + "\Desktop\file";
connection = DriverManager.getConnection("jdbc:sqlite:"+ file );
System.out.println("Connection completed.");
} catch (Exception e) {
e.printStackTrace();
}
return connection;
}
然后我在 java 项目中使用 junit 测试对其进行测试,但每次我都会遇到相同的错误:java.Lang.ClassNotFoundException:org.sqlite.JDBC
PS:我像这样包含 sqlite.jar(右键单击项目-> 配置构建路径-> 库-> 添加外部 jar)但总是面临同样的错误
假设您有以下项目结构:
src/main/java
|
- MyConnection.java
src/test/java
|
- MyConnectionTest.java
具有以下元素:
基础classMyConnection
public class MyConnection {
public Connection getConnection() {
Connection connection = null;
try {
Class.forName("org.sqlite.JDBC");
connection = DriverManager.getConnection("jdbc:sqlite:");
System.out.println("Connection completed.");
} catch (Exception e) {
e.printStackTrace();
}
return connection;
}
}
测试classMyConnectionTest
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import java.sql.Connection;
import java.sql.SQLException;
import org.junit.Test;
public class MyConnectionTest {
@Test
public void isValid() throws SQLException {
MyConnection myConn = new MyConnection();
Connection conn = myConn.getConnection();
assertTrue(conn.isValid(0));
conn.close();
assertFalse(conn.isValid(0));
}
}
在您的 Eclipse 项目中,您只需执行以下操作:
- 右键单击您的项目;
- 导航到 构建路径 和 select 选项 配置构建路径...;
- 在右侧菜单中,按 Add Library、select JUnit (JUnit4) 并单击 完成;
- 最后,在 配置构建路径... 菜单中,select 选项 添加外部 JAR... ,浏览至 SQLite JDBC jar 文件所在的位置,select 并单击 应用。
- 去你的
MyConnectionTest
测试 class 和 运行 它作为 JUnit 测试。
我已经解决了问题:
在此路径中添加了 SQLite jar 文件:
D:\jboss-as-7.1.1.Final\modules\javax\activation\api\main
在JBoss服务器运行时>部署>管理部署 添加了 SQLite jar 文件然后启用它。
我试图在 j2ee 项目中与 sqlite 数据库建立连接,但我一直收到此错误 "ERROR [stderr] (EJB default -8)java.lang.ClassNotFoundException: org.sqlite.JDBC"。知道我在 java 程序中测试了该方法并且工作正常。 我在 ejb 项目(会话 bean)中有一个连接 class,这里有代码。
public Connection getConnection(){
Connection connection= null;
try {
Class.forName("org.sqlite.JDBC");
String dataFolder = System.getProperty("user.home") + "\AppData\Local";
String b = System.getProperty("user.home") ;
String file = b + "\Desktop\file";
connection = DriverManager.getConnection("jdbc:sqlite:"+ file );
System.out.println("Connection completed.");
} catch (Exception e) {
e.printStackTrace();
}
return connection;
}
然后我在 java 项目中使用 junit 测试对其进行测试,但每次我都会遇到相同的错误:java.Lang.ClassNotFoundException:org.sqlite.JDBC PS:我像这样包含 sqlite.jar(右键单击项目-> 配置构建路径-> 库-> 添加外部 jar)但总是面临同样的错误
假设您有以下项目结构:
src/main/java
|
- MyConnection.java
src/test/java
|
- MyConnectionTest.java
具有以下元素:
基础classMyConnection
public class MyConnection {
public Connection getConnection() {
Connection connection = null;
try {
Class.forName("org.sqlite.JDBC");
connection = DriverManager.getConnection("jdbc:sqlite:");
System.out.println("Connection completed.");
} catch (Exception e) {
e.printStackTrace();
}
return connection;
}
}
测试classMyConnectionTest
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import java.sql.Connection;
import java.sql.SQLException;
import org.junit.Test;
public class MyConnectionTest {
@Test
public void isValid() throws SQLException {
MyConnection myConn = new MyConnection();
Connection conn = myConn.getConnection();
assertTrue(conn.isValid(0));
conn.close();
assertFalse(conn.isValid(0));
}
}
在您的 Eclipse 项目中,您只需执行以下操作:
- 右键单击您的项目;
- 导航到 构建路径 和 select 选项 配置构建路径...;
- 在右侧菜单中,按 Add Library、select JUnit (JUnit4) 并单击 完成;
- 最后,在 配置构建路径... 菜单中,select 选项 添加外部 JAR... ,浏览至 SQLite JDBC jar 文件所在的位置,select 并单击 应用。
- 去你的
MyConnectionTest
测试 class 和 运行 它作为 JUnit 测试。
我已经解决了问题:
在此路径中添加了 SQLite jar 文件:
D:\jboss-as-7.1.1.Final\modules\javax\activation\api\main
在JBoss服务器运行时>部署>管理部署 添加了 SQLite jar 文件然后启用它。