在IBM i上运行jar(as400 / iSeries)

时间:2015-08-06 21:40:04

标签: java jar console ibm-midrange

我正在使用IBM i(通常称为AS / 400服务器)。

目前,我已经能够创建.CLASS个文件并完美运行

在as400目录中的

(我认为它被称为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

中的区域设置

我做错了吗?

1 个答案:

答案 0 :(得分:6)

假设jar包含正确的清单,您可以在RUNJVA命令CLASS参数上指定jar文件:

RUNJVA CLASS('/Javacfd/bin/my-jar.jar')

您还可以使用standard java tools and utilitiesQshell解释器:

QSH CMD('java -jar /Javacfd/bin/my-jar.jar')