我是靠谱客的博主 文艺大山,最近开发中收集的这篇文章主要介绍同一个账号启动两个resin而要求使用不同jdk的解决方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

昨天,一个老同事问起这样一个问题,起因是他们的系统由于某些原因原有的部分模块不能运行在新的jdk下,所以需要启动两个resin并使用不同jdk。由于是要开机自动启动,因此启动的账号还需要是同一个。这样常用使用两个账号设置各自的JAVA_HOME的方法,就不可行。同事说google了一下没有找到方法,倒是tomcat有类似的解决方案。
    自从两个月前加入新公司后,就基本没有再碰过web了,下载了一个resin的包,感觉都有些陌生了。
     翻了一下conf/resin.conf文件,没有找到类似的设置。

     一下没有想到方法,后来开会,干活,下班也就暂时放下了。

    今天早上上班,想起来,又去看看了。看到了熟悉的httpd.sh脚本,恩,shell脚本?眼前一亮,似乎可以从这里下手。
    马上测试了一下,似乎真的可行,方案如下:
a.sh:
#! /bin/sh
export JAVA_HOME=/abc/123/home/a
echo $JAVA_HOME

b.sh:
#! /bin/sh
export JAVA_HOME=/abc/123/home/a
echo $JAVA_HOME

    然后执行./a.sh ; ./b.sh;env | grep JAVA_HOME,结果如下:
/abc/123/home/a /abc/123/home/b JAVA_HOME=/usr/lib/java

    恩,ok,在shell中设置环境变量只对该shell生效,不影响其他。

    按照这个思路,只要修改两个resin的httpd.sh脚本,加入对JAVA_HOME的不同设置就可以了搞定这个问题,呵呵,最后的方法还是蛮简单的。

最后

以上就是文艺大山为你收集整理的同一个账号启动两个resin而要求使用不同jdk的解决方法的全部内容,希望文章能够帮你解决同一个账号启动两个resin而要求使用不同jdk的解决方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部