× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Slight oops there...the square brackets belong after the variable name, i.e.

public static void main (String argv[]) {

But that still didn't work. I finally found a sample Hello.class that had

public static void main (String argsݨ) {

which compiled ok. That's with ccsid 1252.

So it's compiled, and I ran it, and I now I get

qsh cmd('java -classpath $CLASSPATH testjava.class')

Exception in thread "main" java.lang.NoClassDefFoundError: testjava.class
Caused by: java.lang.ClassNotFoundException: testjava.class
at java.net.URLClassLoader.findClass(URLClassLoader.java:497)
at java.lang.ClassLoader.loadClass(ClassLoader.java:639)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:605)

After some googling I thought I had it because the testjava.class file's authority was *RW, but I got the same error after changing it to *RWX.

On 7/18/2011 6:32 PM, Gary L Peskin wrote:
The main method has to accept an array of Strings, even if you're not
actually passing anything in. You need to have:

public static void main(String[] argv)
{
...
}

You don't need to name the variable argv -- you can name it whatever you
want.

HTH,
Gary

-----Original Message-----
From: java400-l-bounces@xxxxxxxxxxxx [mailto:java400-l-
bounces@xxxxxxxxxxxx] On Behalf Of Peter Dow
Sent: Monday, July 18, 2011 3:19 PM
To: Java Programming on and around the iSeries / AS400
Subject: NoSuchMethodError because of signature?

Moving right along with my testjava.java program, I got it compiled, and
when I attempt to run it with

qsh cmd('java /home/pdow/testjava.class')

I get the following error:

Exception in thread "main" java.lang.NoSuchMethodError:
testjava.main(ÝLjava/lang/String;)V

qsh cmd('javap -s -public -classpath $CLASSPATH
/home/pdow/testjava.class')

shows

Compiled from "testjava.java"
public class testjava extends java.lang.Object{ public testjava();
Signature: ()V
public static void main();
Signature: ()V
}

What's going on? Why does the error seem to indicate I should be passing
it a string?

--*
Peter Dow*/
Dow Software Services, Inc.
909 793-9050
pdow@xxxxxxxxxxxxxxx<mailto:pdow@xxxxxxxxxxxxxxx> /

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.