Issue

Mac app bundles created with JExpress 8.0.9 or earlier installers are not compatible with JRE 7 or later.

Suggestions
There is a new format for app bundles for Mac customers. This is only important for your existing Mac customers if your app now can use Java 7 or later and your customers want to use or your app requires that Java 7 or later be used.

For those Mac customers that will continue to use Java 6 or earlier with your app, then there is nothing special that they need to do to continue using your app. If your Mac customers will continue to use Java 6 or earlier with your app, then there is nothing special that they need to do to continue using your app.

If your app now needs Java 7 or later or your customers removed Java 6 or earlier and installed Java 7 or later, then we recommend that you have your Mac customers re-install your application to insure that everything is configured properly to support JRE 7 and later.

You do have the option of creating a custom class for your updater which will convert the old Mac app bundles created with JExpress installers to the new format. Here is a basic outline of steps you'll need to have the custom class preform for the conversion (all files referenced below are found in your macapp subdirectory of the JExpress 8.1 or later installation directory):

  1. Make a copy of the InfoAppTemplate.plist and name it to Info.plist.
  2. Adapt the Info.plist so it contains the appropriate details for your app (i.e., change all the JEX_ variables in the plist) to fit your app.
  3. Create a properties file with the same name as the app bundle, but with a suffix of .properties. This file must contain the following properties: programName, jvmRequiredVersion or jvmMinVersion (and jvmMaxVersion if appropriate), args, and execFilename (which is the pat the the JRE's executable).

    The args must contain all the arguments required to start your app that you pass to the JRE. You should install your app on a Mac and look at the .properties file created for your app for an example.

  4. Include the following files in the distribution files:
    • JavaMacLauncher.bin
    • startapp.bin
    • startapp-admin.bin
    • your custom Info.plist
    • your custom properties file
  5. Copy JavaMacLauncher.bin to the app bundle's Contents/MacOS subdirectory.
  6. Copy startapp.bin (or startapp-admin.bin) to the app bundle's Contents/MacOS subdirectory. The difference between these files is whether you want the app to require credentials before it starts.
  7. Copy your custom Info.plist to the app bundle's Contents subdirectory and rename it to Info.plist.
  8. Copy your custom properties file to the JExpress subdirectory of your app's installation directory.

Status
Solved
Applies to
8.0.9 or earlier
Platforms
Mac OS X
Topics
app bundles

All information is provided "as is", without warranty of any kind, and subject to change. DeNova uses its best efforts to provide complete and accurate information. DeNova disclaims all warranties, either explicit or implied, including the warranties of merchantability and fitness for a particular purpose. In no event shall DeNova or its suppliers be liable for any damages whatsoever, including direct, indirect, incidental, consequential, loss of business profits or special damages, even if DeNova or its suppliers have been advised of the possibility of such damages.