cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Not applicable

Strange behaviour of variable $DOLLAR$ on linux

I generate a shell script during installation (com.zerog.ia.installer.actions.ASCIIFileManipulator) with following content:

JAVA_HOME=$JAVA_DOT_HOME$
PATH=$DOLLAR$JAVA_HOME/bin$:$$DOLLAR$PATH

And on solaris after installation I got the correct content:
JAVA_HOME=/opt/jdk1.6.0_23/jre
PATH=$JAVA_HOME/bin:$PATH

But on linux I got:
JAVA_HOME=/opt/jdk1.6.0_23/jre
PATH=PATH

I already tried:
PATH=$DOLLAR$JAVA_HOME/bin:$DOLLAR$PATH

But this makes no difference.
Install anywhere version: InstallAnywhere 11.0 Enterprise Build 3890

Anyone an idea what I did / is wrong?
Labels (1)
0 Kudos
(3) Replies
jerome_IA
Level 9

Strange that comportment is different for both UNIXES.

I guess you have an action of type 'Modify text File' with 'substitute IA variables in file' that is called twice for Linux only!

So on first shot, it changes "PATH=$DOLLAR$JAVA_HOME/bin$:$$DOLLAR$PATH" to "PATH=$JAVA_HOME/bin:$PATH"
Then on second shot, it replaced the enclosing $ ("$JAVA_HOME/bin:$") by empty value, so "PATH"

so I would check in uninstallation folder in file "installvariables.properties" for variable name "$JAVA_HOME/bin:$" which would confirm my assumption.

--Jerome
0 Kudos
Not applicable

Thanks, seems a good theory!
I do not see any strange variables in installvariables.properties, but will check if file is processed twice.
0 Kudos
Not applicable

Found the problem:
There where both for Linux and SunOS two steps, but the second step of linux had substituteIAVariables enabled. Thanks for your help!
0 Kudos