• [Weblogic]startWebLogic.cmd配置JAVA_OPTIONS无效的解决思路与方案


    事情背景:

    由于某个项目原因,需要在2个域的startWebLogic.cmd文件加入如下设置

    set JAVA_OPTIONS=%JAVA_OPTIONS% -javaagent:"pathxx.jar"

    同样的设置,一个域成功,一个域失败。失败的域在启动weblogic时发现jar包无加载成功,同时亦无日志输出报错。

    原因寻找思路:

    1、首先添加确保语句正确无误

    2、从startWebLogic.cmd文件下手,一个一个调用看,看看那里出错。

    @REM Call setDomainEnv here.
    set JAVA_OPTIONS=%JAVA_OPTIONS% -javaagent:"pathxx.jar"         --添加的语句,已确保无误

    set DOMAIN_HOME=f:OracleMiddlewareuser_projectsdomainsase_domain
    for %%i in ("%DOMAIN_HOME%") do set DOMAIN_HOME=%%~fsi

    call "%DOMAIN_HOME%insetDomainEnv.cmd" %*

    set SAVE_JAVA_OPTIONS=%JAVA_OPTIONS%

    set SAVE_CLASSPATH=%CLASSPATH%

    看着红色的语句是要读取setDomainEnv.cmd文件的配置,翻查到该文件,并发现以下语句:

    set JAVA_OPTIONS= -DKF_APP_INST=F: estTest_Server

    问题已经浮出水面了:

    按照执行顺序来看,我们在startWebLogic.cmd里先设置JAVA_OPTIONS的值,然后执行到setDomainEnv.cmd文件时,又设置一遍,导致之前设置的值被覆盖掉了,所以没有生效。

    解决方法:

    1、在setDomainEnv.cmd设置的语句加上=%JAVA_OPTIONS%,即:

    set JAVA_OPTIONS==%JAVA_OPTIONS% -DKF_APP_INST=F: estTest_Server

    加上%JAVA_OPTIONS%简单来说就是累加的意思,代表之前已设置的值。

    2、改变startWebLogic.cmd文件里设置JAVA_OPTIONS值的位置,将set JAVA_OPTIONS=%JAVA_OPTIONS% -javaagent:"pathxx.jar" 语句放到call "%DOMAIN_HOME%insetDomainEnv.cmd" %*语句的后面即可。

    建议:

    1、set JAVA_OPTIONS的值的时候都要加上%JAVA_OPTIONS%,以防覆盖掉别人设置的值,这不单只set JAVA_OPTIONS,设置其他值也同理。

    2、在设置这些值的时候最好能做好记录,以免他人设置时能知道前人的设置。

  • 相关阅读:
    node.js学习
    CSS3——3D效果
    解决HTML5布局,兼容IE问题
    Java 反射调用的一种优化
    jQuery中常用正则表达式
    8种NoSql数据库系统对比
    Java的ClassLoader机制
    Maven / Nexus 的用法和经验
    Spring中BeanFactory和ApplicationContext的区别
    Spring Bean的作用域
  • 原文地址:https://www.cnblogs.com/whylaughing/p/5464496.html
Copyright © 2020-2023  润新知