Run jar on IBM i (as400 / iSeries)

I work with IBM I (often referred to as an AS / 400 server).

Currently I have managed to create .CLASS

files and work fine

in the as400 directory (I think it's called IFS or something like that), I have a tree:

/
+--Javacfd/
   +--bin/
      +--com/
         +---company/
             Class1.class
             Class2.class    
             Hello.class
             Server.class
             +---other/
                 Other.class
                 Another.class
                 Etc.class

      

When I launched it RUNJVA CLASS('com.company.Hello')

Works well! Or RUNJVA CLASS('com.company.other.Other')

Now I need to start the executable jar

On windows java -jar my-jar.jar

Works well

I as400 I have tried

RUNJVA CLASS('hello.Application') CLASSPATH(':\Javacfd\bin\my-jar.jar')    

      

I get

Exception on thread "main" java.lang.NoClassDefFoundError: hello.Application

RUNJVA CLASS('hello.Application') CLASSPATH('Javacfd\bin\my-jar.jar') 

      

I get

Exception on thread "main" java.lang.NoClassDefFoundError: hello.Application

RUNJVA CLASS('hello.Application') CLASSPATH('\Javacfd\bin\my-jar.jar') 

      

I get

Exception on thread "main" java.lang.NoClassDefFoundError: hello.Application

RUNJVA CLASS('hello.Application') 

      

I get

Exception on thread "main" java.lang.NoClassDefFoundError: hello.Application

Note hello

is the package and Application

is the main class. The Jar file is local to\Javacfd\bin\my-jar.jar

Am I doing wrong?

+3


source to share


1 answer


Assuming the jar contains the correct manifest, you specify the jar file in the RUNJVA CLASS parameter:

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

      



You can also use standard java tools and utilities via Qshell :

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

      

+5


source







All Articles