下面的代码编译成功。
代码源(Jdbcexample.java
)和编译的类文件(JdbcExample.class
)目录:-"测试"当我使用 java JdbcExample
运行这个程序时,它会抛出com.ibm.as400.access.AS400JDBCDriver
和作业日志中找不到的类:
代码以 04:找不到运行 Java 程序所需的类"结尾。
我想问题与类路径有关。
任何人都可以指导我如何设置路径/类路径并运行程序以避免上述错误吗?
import java.sql.*;
public class JDBCexample {
public static void main(String[] args)
{
Connection con = null;
try {
Class.forName("com.ibm.as400.access.AS400JDBCDriver);
}
catch(ClassNotFoundException e)
{
System.out.println(e);
System.exit(0);
}
try {
con = DriverManager.getConnection("jdbc:as400://yourserver", "yourUserId","yourPassword");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM YOURLIB.YOUR_PF_FILE");
while (rs.next())
{
String field1 = rs.getString(1);
String field2 = rs.getString("fieldname");
}
rs.close();
stmt.close();
con.close();
}
catch(Exception e)
{
}
}
}
错误指出它找不到 JDBC 驱动程序。 该驱动程序是 IBM Toolkit for Java 的一部分。 就我而言,我使用的是JTOpen而不是机器附带的版本。 我把jt400.jar放在IFS的一个名为java的目录中。
如果从 IBM i(不是 PASE 或 QShell)运行,那么使用 ADDENVVAR 设置类路径。 这对我有用,因为我将.jar文件放在/java 中:
ADDENVVAR ENVVAR(CLASSPATH) VALUE('.:+
/java:+
/java/*')
机器随附的 jt400 位于 IFS 中。 在我的 7.2 机器上,路径是:/QIBM/ProdData/HTTP/Public/jt400/lib
- 如果要使用该版本,请将该路径放在 CLASSPATH 中。 IBM 在工具箱上维护一个常见问题解答。
使用以下命令设置类路径并执行 java 程序。
SET CLASSPATH=%DIR%libyourlib.jar
Class.forName("com.ibm.as400.access.AS400JDBCDriver);
您是否在项目中添加了AS400JDBCDriver的相关jar。检查一次
试试
java -cp pathtojarlib:. JdbcExample
其中 pathtojarlib 是连接器库的路径
我以为你犯了一些愚蠢的错误。请检查您的班级名称。在上面给定的代码中,类名JDBCexample
你用java JdbcExample
来运行..使用 java JDBCexample
类路径添加到 jar 的清单中。中频。 例:
Manifest-Version: 1.0
Main-Class: JdbcExample
Class-Path: lib/db2jcc.jar lib/commons-logging-1.1.3.jar