我正在使用IBM i(通常称为AS / 400服务器)。
目前,我已经能够创建.CLASS
个文件并完美运行
(我认为它被称为IFS或类似的东西)a就像我的树一样:
/
+--Javacfd/
+--bin/
+--com/
+---company/
Class1.class
Class2.class
Hello.class
Server.class
+---other/
Other.class
Another.class
Etc.class
当我运行RUNJVA CLASS('com.company.Hello')
时效果很好!要么
RUNJVA CLASS('com.company.other.Other')
现在我需要运行一个可执行jar
在Windows java -jar my-jar.jar
中运行良好
我as400我试过
RUNJVA CLASS('hello.Application') CLASSPATH(':\Javacfd\bin\my-jar.jar')
我得到了
线程中的异常" main" java.lang.NoClassDefFoundError:hello.Application
RUNJVA CLASS('hello.Application') CLASSPATH('Javacfd\bin\my-jar.jar')
我得到了
线程中的异常" main" java.lang.NoClassDefFoundError:hello.Application
RUNJVA CLASS('hello.Application') CLASSPATH('\Javacfd\bin\my-jar.jar')
我得到了
线程中的异常" main" java.lang.NoClassDefFoundError:hello.Application
RUNJVA CLASS('hello.Application')
我得到了
线程中的异常" main" java.lang.NoClassDefFoundError:hello.Application
注意 hello
是包,Application
是主类。 Jar文件是\Javacfd\bin\my-jar.jar
我做错了吗?
答案 0 :(得分:6)
假设jar包含正确的清单,您可以在RUNJVA命令CLASS参数上指定jar文件:
RUNJVA CLASS('/Javacfd/bin/my-jar.jar')
您还可以使用standard java tools and utilities到Qshell解释器:
QSH CMD('java -jar /Javacfd/bin/my-jar.jar')