如何在 linux 系统启动脚本中启用 java 路径?

How to enable java path to be used within linux system startup scripts?

我正在尝试为 Apache Storm 创建一个启动脚本,它可以在启动时自动启动 Storm Supervisor。

但我经常收到这个错误:

Traceback (most recent call last):
File "./home/ec2-user/apache-storm-1.1.2/bin/storm.py", line 887, in main()
File "./home/ec2-user/apache-storm-1.1.2/bin/storm.py", line 884, in main (COMMANDS.get(COMMAND, unknown_command))(*ARGS)
File "./home/ec2-user/apache-storm-1.1.2/bin/storm.py", line 679, in supervisor
jvmopts = parse_args(confvalue("supervisor.childopts", cppaths)) + [ File "./home/ec2-user/apache-storm-1.1.2/bin/storm.py", line 153, in confvalue
p = sub.Popen(command, stdout=sub.PIPE)
File "/usr/lib64/python2.7/subprocess.py", line 390, in init errread, errwrite)
File "/usr/lib64/python2.7/subprocess.py", line 1025, in _execute_child raise child_exception
OSError: [Errno 2] No such file or directory

在我看来,错误是由于无法检测JAVA_HOME和相关的java路径造成的。

我使用了 this 修改路径的脚本

我已经在 /.bashrc/etc/profile/etc/environment 中配置了 javapath。 但似乎没有任何效果。

有人能帮忙吗?

我很高兴地声明,我通过附加以下内容纠正了这个问题:

export JAVA_HOME=/opt/jdk1.8.0_171
export JRE_HOME=/opt/jdk1.8.0_171/jre
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

到启动脚本本身。