简体   繁体   English

如何在Linux系统启动脚本中启用Java路径?

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

I was trying to create a startup script for Apache Storm, which can automatically start storm supervisor upon boot. 我试图为Apache Storm创建启动脚本,该脚本可以在启动时自动启动Storm Supervisor。

But I constantly get this error: 但是我不断收到这个错误:

Traceback (most recent call last): 追溯(最近一次通话):
File "./home/ec2-user/apache-storm-1.1.2/bin/storm.py", line 887, in main() 文件“ ./home/ec2-user/apache-storm-1.1.2/bin/storm.py”,第887行,位于main()中
File "./home/ec2-user/apache-storm-1.1.2/bin/storm.py", line 884, in main (COMMANDS.get(COMMAND, unknown_command))(*ARGS) 主目录中的文件“ ./home/ec2-user/apache-storm-1.1.2/bin/storm.py”,第884行(COMMANDS.get(COMMAND,unknown_command))(* ARGS)
File "./home/ec2-user/apache-storm-1.1.2/bin/storm.py", line 679, in supervisor 在主管中添加文件“ ./home/ec2-user/apache-storm-1.1.2/bin/storm.py”,行679
jvmopts = parse_args(confvalue("supervisor.childopts", cppaths)) + [ File "./home/ec2-user/apache-storm-1.1.2/bin/storm.py", line 153, in confvalue jvmopts = parse_args(confvalue(“ supervisor.childopts”,cppaths))+ [confvalue中的文件“ ./home/ec2-user/apache-storm-1.1.2/bin/storm.py”,第153行
p = sub.Popen(command, stdout=sub.PIPE) p = sub.Popen(命令,stdout = sub.PIPE)
File "/usr/lib64/python2.7/subprocess.py", line 390, in init errread, errwrite) 初始化 errread,errwrite中的文件“ /usr/lib64/python2.7/subprocess.py”,第390行)
File "/usr/lib64/python2.7/subprocess.py", line 1025, in _execute_child raise child_exception _execute_child中的文件“ /usr/lib64/python2.7/subprocess.py”,行1025,引发child_exception
OSError: [Errno 2] No such file or directory OSError:[Errno 2]没有这样的文件或目录

It seems to me that the error is caused due to the inability of detecting JAVA_HOME and related java path. 在我看来,该错误是由于无法检测JAVA_HOME和相关的Java路径引起的。

I used this script with modified paths 将此脚本与修改后的路径一起使用

I already configured javapath in /.bashrc , /etc/profile , /etc/environment . 我已经在/.bashrc /etc/profile/etc/environment配置了javapath。 But nothing seems to work. 但是似乎没有任何作用。

Can anyone help? 有人可以帮忙吗?

I am happy to declare that I rectified this issue by appending: 我很高兴地宣布,我通过附加以下内容纠正了此问题:

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

to the startup script itself. 到启动脚本本身。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何编辑Weblogic启动脚本以启用JMX? - How to edit Weblogic startup scripts to enable the JMX? 如何在Windows / Linux / MacOS上的系统启动时运行Java应用程序? - How to run Java application at system startup on Windows/Linux/MacOS? 如何在Ubuntu Linux启动时运行Java应用程序 - How to run Java application on startup of Ubuntu Linux 在正在运行的JVM中,如何以编程方式确定启动时使用的jvm选项? - Within a running JVM, how to programmatically determine the jvm options used at startup? Java中的Linux命令“将所有使用过的jar由JVM写入文件” - Linux command “write all used jars by JVM to file” within Java 在使用替代方案的 Linux 系统上,JAVA_HOME 的正确路径是什么? - What is the correct path for JAVA_HOME on a Linux system that uses alternatives? Linux路径变量未在Java程序中正确设置 - Linux path variable not setting correctly from within Java program 如何在Apache Tomcat上部署的java系统启动时自动启动一个函数 - how to start a function automatically on the system startup in java deployed on Apache Tomcat Windows启动时如何启动独立于系统的Java应用程序 - how to start a java application system-independent at Windows startup 如何在系统启动上运行Java Web Start应用程序? - How to run a Java Web Start application on System Startup?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM