日期:2014-05-19  浏览次数:20682 次

自己打包jdk到j2ee服务器 只需要修改run.bat文件即可

自己打包jdk到j2ee服务器中,只要用jboss、tomcat等免费服务器的同事们,就会碰到这样的问题。

?

现在贴下自己总结的给大家分享:以jboss为例

?

?

第一步: 需要把jdk目录拷贝到jboss目录中比如起名叫jdk1.5.0_06

?

目录结构如下:

?

jboss-4.0.3SP1----| ..bin

???????????????????????????? | ..client

???????????????????????????? | ..jdk1.5.0_06

???????????????????????????? | ..lib

?????????????????????????????| ..server

???????????????????????????? | ..docs

?

?

注意:这里是jdk而不是jre各位同仁注意了

?

第二步:修改run.bat文件

?

这里我说下自己的实现方式、一般开发自己都配置 JAVA_HOME 的但是希望给客户的时候直接打包好。但是又不希望修改用户服务器的环境(或者服务器上存在别的 j2ee服务器以免冲突)

?

我这里实现是 判断用户机器是否存在 JAVA_HOME 环境变量,如果存在则直接使用客户机上的环境(故本配置十分灵活)

?

修改run.bat地方:?大家找到 在 :FOUND_RUN_JAR 和 ?:ADD_TOOLS 之间的代码

?

原来为如下:

?

if not "%JAVA_HOME%" == "" goto ADD_TOOLS

set JAVA=java

echo JAVA_HOME is not set.  Unexpected results may occur.
echo Set JAVA_HOME to the directory of your local JDK to avoid this message.
goto SKIP_TOOLS

说明:原来是判断机器是否存在%JAVA_HOME%变量 如果存在则执行?ADD_TOOLS 往下执行,如果不存在 则执行SKIP_TOOLS 跳出命令行 打印出echo JAVA_HOME is not set.? Unexpected results may occur.
echo Set JAVA_HOME to the directory of your local JDK to avoid this message. 信息,所以大家看明白的话 继续。。。。

?

现修改为如下

?

if "%JAVA_HOME%" == "" goto CONTINUE      
goto ADD_TOOLS

:CONTINUE
echo Could not locate %JAVA_HOME% and set %JAVA_HOME%=..\jdk1.5.0.06
set JAVA_HOME=..\jdk1.5.0_06


?

说明:现在改为先判断机器是否存在%JAVA_HOME%如果不存在则执行CONTINUE?? 这里本人把JAVA_HOME设置为针对当前dir的相对路径 即第一步中大家拷贝的jdk到jboss中的目录 set JAVA_HOME=..\jdk1.5.0_06

?

如果存在java_home的话 则继续执行ADD_TOOLS 往下执行 goto ADD_TOOLS,所以这里即使服务器没有配置环境变量照样可以使用jboss中自己拷贝的jdk了。

?

小需求:如果碰到客户服务器装有别的j2ee服务程序,但是你自己的工程和机器本身的环境不兼容。这里修改run.bat可固定设置为使用自己的jdk。

?

?

if "%JAVA_HOME%" == "" goto CONTINUE      
set JAVA_HOME=..\jdk1.5.0_06
goto ADD_TOOLS

:CONTINUE
echo Could not locate %JAVA_HOME% and set %JAVA_HOME%=..\jdk1.5.0.06
set JAVA_HOME=..\jdk1.5.0_06

?

说明:即无论如何都把JAVA_HOME环境设置为自己的jdk。这样也不失为一个万全之策。。。

?

?

呵呵。就这里吧。无奈水平有限,有同仁看不明白的话。可以发email给本人。。。 (闲暇之余回复哦)

?

1 楼 luyuwww 2008-10-23  
o.哈哈哈.
实施人员失业了就干死你