views:

33

answers:

1

Hi, I have used the jarbundler ant task to create an OSX (10.6.4) XXX.app for my java app. The problem is that it starts fine in any other directory except the /Applications directory. A look at file permissions shows nothing amiss. I can get it to work by two methods - both not suitable for real deployments:

  1. Build the .app with Jar Bundler GUI (hard to automate repeatedly)
  2. Start and stop the .app file in another directory (e.g. my build dir) and then copy the .app file into /Applications/MyAppDir (not a solution for a install script!). It then works !

The error in OS X console is: posix_spawn("/Applications/JyroJMS.app/Contents/MacOS/JavaApplicationStub", ...): Permission denied

I have tried various options in Jar bundler task like StartOnMainThread=true.

Any suggestions ?

A: 

I have found the problem(s): 1. I am using izpack to deploy the app bundle in a mistaken effort to standardized install process across platforms. This was causing issues with JavaApplicationStub execute permissions. 2. Also jarbundler.jar ant task is apparently using an old JavaApplicationStub. When I replaced it with java 6 version all went well.

So lessons learnt: - I will not try to create a 'universal' installer - this does not work - Will use compressed disk images to deploy my app bundle

Serge Merzliakov
Also, using the zip ant task also removes the execute permission. This means you cannot bundle up the app on non-OSX, since `hdiutil` or similar is required for a `dmg`.
Daniel Beck