cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
mheuler
Level 3

Problem with MAC installer after upgrade to InstallAnywhere 2022 R2

The same project works fine with InstallAnywhere 2021 SP2 and the $INSTALLER_REP$ is correctly defined since used before for all other resources.

We have two LaunchAnywhere entries with rules, so only one is installed in the end. But since we have two we get the duplicate entry exception! If you use only one this exception is gone.

The other problem is that the ICNS file is not found, but it exists right were it should it. The whole setup worked fine with InstallAnywhere 2021 SP2 and also InstallAnywhere 2022 R1.

Building MacOSX (VM) web installer...
Input Certificate Path=null
java.io.FileNotFoundException: $INSTALLER_REP$\GUI\stablenet512x512.icns (The system cannot find the path specified)
at java.base/java.io.FileInputStream.open0(Native Method)
at java.base/java.io.FileInputStream.open(FileInputStream.java:219)
at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
at Flexeraaet.aa(Unknown Source)
at Flexeraaet.ab(Unknown Source)
at Flexeraaeu.ad(Unknown Source)
at Flexeraaeu.ab(Unknown Source)
at Flexeraaev.ds(Unknown Source)
at Flexeraaev.am(Unknown Source)
at Flexeraae1.c7(Unknown Source)
at Flexeraaev.an(Unknown Source)
at Flexeraae1.ag(Unknown Source)
at Flexeraaeh.a4(Unknown Source)
at Flexeraaeo.run(Unknown Source)
java.util.zip.ZipException: duplicate entry: StableNetGUI.app/Contents/PkgInfo
at java.base/java.util.zip.ZipOutputStream.putNextEntry(ZipOutputStream.java:233)
at Flexeraaet.aa(Unknown Source)
at Flexeraaet.ab(Unknown Source)
at Flexeraaeu.ad(Unknown Source)
at Flexeraaeu.ab(Unknown Source)
at Flexeraaev.ds(Unknown Source)
at Flexeraaev.am(Unknown Source)
at Flexeraae1.c7(Unknown Source)
at Flexeraaev.an(Unknown Source)
at Flexeraae1.ag(Unknown Source)
at Flexeraaeh.a4(Unknown Source)
at Flexeraaeo.run(Unknown Source)
The MacOSX (VM) web installer is located at:

0 Kudos
(11) Replies
VineethaNair
Level 6

Hi,

Could you please attach the screenshot of the duplicate LaunchAnywhere entries added?  Please also let know where you are setting the icon path $INSTALLER_REP$\GUI\stablenet512x512.icns.

0 Kudos

Here is a screenshot from the project: we have two similar LaunchAnywhere entries (different properties) and they are installed with rules for specific OS (one is for MAC OS and the other for Windows and Linux).

The other screenshot shows the icon config for generic and MAC OS. The config is the same, the files are in the same folder. 

We tested the installer: the LaunchAnywhere is not added at all (expected since caused errors), but the icon files and the stablenet512x512.icns is correctly installed.

0 Kudos

Hi,

Tried the mentioned scenario.  Could you please try configuring a slightly different Name for the duplicate launchanywhere entry? With a different name for the duplicate entry, built was proper in the setup here.

Regarding the icon path, on trials here without duplicate entry,  noticed the launchanywhere is getting created & the icon properly set though the same stack trace was seen during build.  Could you please confirm this?

0 Kudos

I will try this today and then update here.

0 Kudos

Using different names for the two LaunchAnywhere I don't get the duplicat exception:

The FileNotFound is still shown (see below): I will verify if the LaunchAnwhere is correctly created despite the message. Need to wait for access to MAC test devices and then I will check the created installer.

Finished assembling installer components
Building MacOSXArm (VM) web installer...
Input Certificate Path=null
java.io.FileNotFoundException: $INSTALLER_REP$\GUI\stablenet512x512.icns (The system cannot find the path specified)
at java.base/java.io.FileInputStream.open0(Native Method)
at java.base/java.io.FileInputStream.open(FileInputStream.java:219)
at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
at Flexeraaet.aa(Unknown Source)
at Flexeraaet.ab(Unknown Source)
at Flexeraaeu.ad(Unknown Source)
at Flexeraaeu.ab(Unknown Source)
at Flexeraaev.ds(Unknown Source)
at Flexeraaev.am(Unknown Source)
at Flexeraae1.c7(Unknown Source)
at Flexeraaev.an(Unknown Source)
at Flexeraae1.ag(Unknown Source)
at Flexeraaeh.a4(Unknown Source)
at Flexeraaeo.run(Unknown Source)
java.io.FileNotFoundException: $INSTALLER_REP$\GUI\stablenet512x512.icns (The system cannot find the path specified)
at java.base/java.io.FileInputStream.open0(Native Method)
at java.base/java.io.FileInputStream.open(FileInputStream.java:219)
at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
at Flexeraaet.aa(Unknown Source)
at Flexeraaet.ab(Unknown Source)
at Flexeraaeu.ad(Unknown Source)
at Flexeraaeu.ab(Unknown Source)
at Flexeraaev.ds(Unknown Source)
at Flexeraaev.am(Unknown Source)
at Flexeraae1.c7(Unknown Source)
at Flexeraaev.an(Unknown Source)
at Flexeraae1.ag(Unknown Source)
at Flexeraaeh.a4(Unknown Source)
at Flexeraaeo.run(Unknown Source)
The MacOSXArm (VM) web installer is located at:

 

 

 

 

 

0 Kudos

Hi mheuler,

To avoid seeing the FileNotFound exception in build, could you please try creating a new icons folder in C:\Program Files and copy the gui folder which contain the .icns file to that location and choose the icon in this path for the macOS launchanywhere entry? On this trial here, the error was not seen in the console and the launchanywhere was created in macOS and the icon was set proper.

0 Kudos

Hi,

now moved the icon to a absolute path in the programs folder and also selected the icon from that path.

Now the icon not found exception is gone!

For unknown reason we now get another exception about VM arguments. I am not sure what is causing this.

Building MacOSX (VM) web installer...
Input Certificate Path=null
java.lang.Exception: Invalid String token in the VM Arguements Option
at com.zerog.util.VMArgSplitter.parseAndSplitVMOptionsIntoStrings(Unknown Source)
at Flexeraaw5.a8(Unknown Source)
at Flexeraaw5.ag(Unknown Source)
at com.zerog.ia.installer.actions.MakeExecutable.convertLAXPropertiesToPlist(Unknown Source)
at com.zerog.ia.installer.actions.MakeExecutable.generateInfoPlist(Unknown Source)
at Flexeraaeu.ad(Unknown Source)
at Flexeraaeu.ab(Unknown Source)
at Flexeraaev.ds(Unknown Source)
at Flexeraaev.am(Unknown Source)
at Flexeraae1.c7(Unknown Source)
at Flexeraaev.an(Unknown Source)
at Flexeraae1.ag(Unknown Source)
at Flexeraaeh.a4(Unknown Source)
at Flexeraaeo.run(Unknown Source)
java.lang.Exception: Invalid String token in the VM Arguements Option
at com.zerog.util.VMArgSplitter.parseAndSplitVMOptionsIntoStrings(Unknown Source)
at Flexeraaw5.a8(Unknown Source)
at Flexeraaw5.ag(Unknown Source)
at com.zerog.ia.installer.actions.MakeExecutable.convertLAXPropertiesToPlist(Unknown Source)
at com.zerog.ia.installer.actions.MakeExecutable.generateInfoPlist(Unknown Source)
at Flexeraaeu.ad(Unknown Source)
at Flexeraaeu.ab(Unknown Source)
at Flexeraaev.ds(Unknown Source)
at Flexeraaev.am(Unknown Source)
at Flexeraae1.c7(Unknown Source)
at Flexeraaev.an(Unknown Source)
at Flexeraae1.ag(Unknown Source)
at Flexeraaeh.a4(Unknown Source)
at Flexeraaeo.run(Unknown Source)
The MacOSX (VM) web installer is located at:
C:\Installer\StableNet_Installer\GUI-12.0\GUI-12.0_Build_Output\Web_Installers\InstData\MacOSX\VM\StableNetGUIInstall.zip

0 Kudos

we have defined "lax.nl.java.option.additional" with the value of "-Dfile.encoding=UTF-8 -Duser.language=en --add-opens java.desktop/javax.swing.plaf.synth=ALL-UNNAMED --add-opens java.desktop/javax.swing.plaf.basic=ALL-UNNAMED --add-opens java.desktop/javax.swing=ALL-UNNAMED --add-opens java.desktop/javax.swing.tree=ALL-UNNAMED --add-opens java.desktop/java.awt.event=ALL-UNNAMED --add-exports java.base/sun.security.action=ALL-UNNAMED --add-exports java.desktop/sun.awt.shell=ALL-UNNAMED --add-exports java.desktop/sun.swing.plaf.synth=ALL-UNNAMED --add-exports java.desktop/sun.swing.table=ALL-UNNAMED --add-exports java.desktop/sun.swing=ALL-UNNAMED --add-exports java.desktop/com.sun.java.swing.plaf.windows=ALL-UNNAMED --add-exports java.desktop/sun.awt.shell=ALL-UNNAMED --add-exports java.desktop/com.sun.awt=ALL-UNNAMED --add-exports java.base/sun.security.action=ALL-UNNAMED --add-opens java.base/java.util=ALL-UNNAMED".

The add-opens are required for the used Java 17. But this also worked before.

0 Kudos

Hi,

You are right, the build exception seen about VM arguments is caused during parsing of  --add-opens and --add-exports additional VM args. But observed the VM args exception seen during build is not causing any issue with installer. After building with the given additional VM arguments configured, tried the installer on Mac machine with java 17 , and on trial did not observe any issue with the functionality, the behavior of the installer/launcher wss observed to be the same as earlier. Hope you will verify this in your Mac setup.

0 Kudos

We tested everything using the local path for the ICNS file and kept the Java 17 required VM parameters. The exception is shown during the build. But the created Installers work fine on out target platforms Windows, Linux and MAC ARM/Intel.

The exception during MAC build seems to not cause any issue.

With the workarounds with can build ourt Installers. Next week we will do mroe detailed tests on different MAC OS version, but right now it looks like it will work. We also hope the bugs will be fixed in InstallAnywhere so the workaround is not required with future updates.

BR

Marius

0 Kudos

Hi mheuler,

Nice to hear the Installers are working fine on all target platforms and the workaround helped.  Both the misleading exceptions displayed during build will be cleaned up in the next release.

0 Kudos