Você precisa se preocupar com mais do que apenas $ JAVA_HOME; você também precisa definir $ PATH se você for chamar os comandos sem um caminho absoluto. ou seja, java
e não /opt/java/1.7/bin/java
.
Agora, dependendo de como o script funciona ou de como você chama o java, você tem algumas opções.
Script Bash
Isso significa que você não precisa adicionar um usuário extra
#!/bin/bash
JAVA_HOME=/opt/java/1.7
PATH=/opt/java/1.7/bin:$PATH
...
~ / .bashrc
Se você quiser usar outro usuário colocando isso no seu .bashrc é uma opção. export é usado para que $ JAVA_HOME e $ PATH sejam transformados em variáveis de ambiente.
...
export JAVA_HOME=/opt/java/1.7
export PATH=/opt/java/1.7/bin:$PATH
...
eval
Você também pode definir essas variáveis de ambiente rapidamente para um único comando e seus sub-comandos
eval JAVA_HOME=/opt/java/1.7 PATH=/opt/java/1.7/bin:$PATH java ${ARGS}