如何让 JBoss 7.1.3 使用我的 $JAVA_HOME 环境变量?

How to get JBoss 7.1.3 to use my $JAVA_HOME environment varaible?

我正在使用 Mac 10.9.5 和 JBoss 7.1.3.Final。我正在通过 termianl (bash shell) 启动 JBoss,就像这样

Daves-MacBook-Pro:core davea$ cd $JBOSS_HOME/bin
Daves-MacBook-Pro:bin davea$ sudo sh standalone.sh

在 shell 中,我可以看到定义了 $JAVA_HOME ...

Daves-MacBook-Pro:bin davea$ echo $JAVA_HOME
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

但是,JBoss 没有获取这个环境变量(它使用的是 Java 8 安装,我的机器上也有),迫使我取消注释 $ 中的以下行JBOSS_HOME/bin/standalone.conf 文件 ...

JAVA_HOME="/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home"

虽然这很简单,但我更喜欢更自动化的解决方案。有谁知道我必须做什么才能让 JBoss 识别我在 shell 中设置的 $JAVA_HOME 环境变量,而不必硬编码 [=47] 中的值=]配置?

编辑:

(回应发布的评论)请记住,我是从同一个 shell 做这一切的。所以我在这里展示了我定义了 $JAVA_HOME 环境变量……

Daves-MacBook-Pro:bin davea$ echo $JAVA_HOME
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

然后我按照您建议的方式编辑我的 $JBOSS_HOME/standalone/bin/standalone.conf 文件……

echo JAVA_HOME=$JAVA_HOME
echo "DONe with echo"
#JAVA_HOME="/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home"

当我重新运行启动脚本时,打印出来的是...

JAVA_HOME=
DONe with echo

如果你真的想使用sudo,你必须添加-E参数来保留环境变量。