OESF Portables Forum

Everything Else => Zaurus - Everything Development => Distros, Development, and Model Specific Forums => Archived Forums => Personal Java/Jeode/J2ME Personal Profile => Topic started by: cwalstad on July 24, 2004, 04:37:32 pm

Title: Inner classes
Post by: cwalstad on July 24, 2004, 04:37:32 pm
So I have this Java program that uses inner classes.  When I transfer the class files over to the Zaurus I get the message that filenames cannot be saved with a $ sign in them.  I think the Zaurus converts the dollar sign to a %24 or something like that.  When I try to run the program the vm fails to find the class.  I tried using the terminal to rename the file and replace the %24 with a $ sign.  If I do that the file seems to dissapear completely.  How can I use inner classes on the Zaurus?

Thanks for your help.
Title: Inner classes
Post by: GMan on July 24, 2004, 04:56:34 pm
cwalstad,

Can you jar up your class files from your machine and then transfer the JAR file over to the Z?  You can then launch it with the jar file in the classpath or if you are using the J2ME PP, then you can create a manifest to run the program with cvm -jar <jarname>.

-Gary
Title: Inner classes
Post by: cwalstad on July 24, 2004, 06:23:34 pm
Thanks for your help.

Yes it works to add all of the inner classes to a jar file and then execute it using
Code: [Select]
evm -cp NameOfJarFile.jar:. NameOfMainClassBut you cannot put all of the files in one jar and create a manifest file then run it using
Code: [Select]
evm -jar NameOfJarFile.jarBecause evm will not recognize the jar flag.


What a pain....
Title: Inner classes
Post by: jamesannan on July 25, 2004, 03:21:59 am
May not help, but compiling the java on the zaurus itself generates the $ class files and it runs fine...at least that's in my limited experience using kopi on a 860.

James
Title: Inner classes
Post by: GMan on July 25, 2004, 06:48:23 am
Oops - I meant 'cvm -jar' if you are using the J2ME PP instead of Jeode
Title: Inner classes
Post by: cascadefx on September 10, 2004, 12:35:56 pm
Quote
Thanks for your help.

Yes it works to add all of the inner classes to a jar file and then execute it using
Code: [Select]
evm -cp NameOfJarFile.jar:. NameOfMainClassBut you cannot put all of the files in one jar and create a manifest file then run it using
Code: [Select]
evm -jar NameOfJarFile.jarBecause evm will not recognize the jar flag.


What a pain....
What about:

Code: [Select]
evm -classpath /path/to/jar/NameOfJarFile.jar?
Title: Inner classes
Post by: Omicron on October 10, 2004, 09:24:00 am
Quote
May not help, but compiling the java on the zaurus itself generates the $ class files and it runs fine...at least that's in my limited experience using kopi on a 860.

James


Yeah, this works for me as well, even compiling using Eclipse...I use a C860 too.

Perhaps this is a 5500 issue?
Title: Inner classes
Post by: rrashkin on October 12, 2004, 02:17:59 pm
I run on a 5500 with Sharp 3.1.  I do most of my compiling on a PC and copy the files (including inner classes) onto my CF or SD card.  Never had a problem.  I also use KOPI  sometimes and also don't have a problem.  
How are you transfering the files?  If you're using the ZDrive software that might be the problem.
Title: Inner classes
Post by: jfox on June 21, 2005, 02:11:03 am
The problem is that Jeode will use the jar properly as the classpath, but does not read the manifest file to find the class with "main". So you must say something like:

evm -cp myjar.jar  path.to.mymainclass