我需要能够使用某个java二进制文件调用某个进程.将该过程称为“foo”.但是,foo也通过java调用了其他几个进程,但foo对我来说是一个黑盒子.当foo调用这些进程时,它只运行“java bar”,“java bat”等.如何告诉foo和foo调用的任何进程,只使用/ full / path / to / java?基本上我想对单个shell会话和/或单个进程树使用“update-alternatives”.
操作系统是Centos7,shell是bash.
设置系统java是不可能的,因为系统上的其他进程需要不同的java二进制文件.
解决方法:
创建一个目录〜/ myjava,它只包含指向/ full / path / to / bin / java的符号链接.
mkdir ~/myjava
ln -s /full/path/to/bin/java ~/myjava/java
在命令搜索路径的开头使用此目录运行该进程.
另外,有些程序会查看环境变量JAVA_HOME.确保它是一致的.实际的java可执行文件应位于名为bin或$JAVA_HOME的子目录中.
PATH=~/myjava:$PATH JAVA_HOME=/full/path/to foo
标签:java,linux,command-line 来源: https://codeday.me/bug/20190814/1658318.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。