Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Jar Bundler and bootclasspath



Andrew Hart wrote:

>Here is the relevant entry from the generated Info.plist file:

Something very strange is going on here.

I'm assuming you just pasted in the text from the Info.plist file.  If so,
then that file has something very strange in it, or your email agent is
mangling something, because here's how it appeared in the email you sent me
directly:

<key>VMOptions</key>
<string> - X b o o t c l a s s p a t h / p : $APP_PACKAGE/Contents/
Resources/Java/v b j a p p . j a r :$APP_PACKAGE/Contents/Resources/
Java/v b j o r b . j a r :$APP_PACKAGE/Contents/Resources/Java/
 s w i n g a l l . j a r   - X m s 2 5 6 m   - X m x 756 m</string>

(I hope this actually survives the munging of the list-software, but I'm
also sending it directly to you, to be fairly sure.)

Notice the extra spaces or something between many of the letters, though
not all.  They should NOT be there.  Their presence is almost certainly
causing the parsing of VMOptions to fail.  If the parsing fails, then none
of the -X options get set, so boot-classpath is unaffected.

Also, notice that in the archived version of your post, there is a
different problem.  See the bottom of this archived page, where the last
thing present is a <string> tag, but there's no body and no remainder of
your message:
  <http://lists.apple.com/archives/java-dev/2005/Oct/msg00304.html>

You might want to open Info.plist using a program like TextWrangler (free),
have it show invisibles, and see what's really in Info.plist.
  <http://www.barebones.com/products/textwrangler/>

Or use the 'hexdump' command (read 'man hexdump') in Terminal to dump
Info.plist, then decipher what's actually in the file.


I also suggest a greatly simplified test case, where you have a simple
HelloWorld main class in a jar, and you put it in the classpath using the
-Xbootclasspath option in VMOptions, with no ClassPath key at all.

I'm pretty sure an empty ClassPath key will work, because I've used this
before when my main class was in an installed Java-extension jar.

Also, if your HelloWorld program printed out all the system properties, you
could then see what values they actually have, and know for sure whether
-Xbootclasspath worked: it's the "sun.boot.class.path" property.  Standard
output will appear on the console.log of
/Applications/Utilities/Console.app.

Start simple and work up, instead of starting complex, breaking, then
figuring out where the complex thing broke.

  -- GG


 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Java-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/java-dev/email@hidden

This email sent to email@hidden



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.