Tomcat服务器无法启动DCEVM修补JRE

时间:2015-11-18 10:38:53

标签: java eclipse tomcat hotswap dcevm

我已按照here

提到的步骤进行了跟踪
  1. 在JDK中安装“jvm.dll”DCEVM补丁(成功。创建DCEVM补丁文件夹)
  2. 在Eclipse中 - Tomcat服务器 - 运行时环境 - 必须将JRE映射到在步骤1中修补DECVM的JDK的相同JRE
  3. Tomcat - 添加“-XXaltjvm =" dcevm" -javaagent:\ HotswapAgent.jar“在VM参数中(VM参数-Dcatalina.base="C:\MCA\workspaces\MCA\.metadata\.plugins\org.eclipse.wst.server.core\tmp0" -Dcatalina.home="C:\MCA\tools\apache-tomcat-7.0.54" -Dwtp.deploy="C:\MCA\workspaces\MCA\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps" -Djava.endorsed.dirs="C:\MCA\tools\apache-tomcat-7.0.54\endorsed" -XXaltjvm="dcevm" -javaagent:C:\MCA\tools\dcevm\hotswap-agent.jar
  4. 禁用Tomcat网络模块中的“自动重新加载”
  5. 每当我尝试使用异常时都会抛出。

    下面是堆栈跟踪。

     HOTSWAP AGENT: 17:15:46.234 INFO (org.hotswap.agent.HotswapAgent) - Loading Hotswap agent {0.3.0-SNAPSHOT} - unlimited runtime class redefinition.
    java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:382)
        at sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:397)
    Caused by: java.lang.NullPointerException
        at org.hotswap.agent.config.PluginConfiguration.<init>(PluginConfiguration.java:44)
        at org.hotswap.agent.config.PluginManager.init(PluginManager.java:95)
        at org.hotswap.agent.HotswapAgent.premain(HotswapAgent.java:42)
        ... 6 more
    FATAL ERROR in native method: processing of -javaagent failed
    Exception in thread "main" 
    

    Java - 版本是

    java version "1.7.0_80"
    Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
    Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
    

    here下载的安装程序文件。

3 个答案:

答案 0 :(得分:0)

Here它描述了一个非常类似的错误,由你得到的同一个NPE引起:

Caused by: java.lang.NullPointerException
   at org.hotswap.agent.config.PluginConfiguration.<init>(PluginConfiguration.java:44)

解决方案似乎是从Oracle JDK切换到OpenJDK。

因此,如果您使用的是Oracle JDK,请尝试更改它。如果您已经在使用OpenJDK,请忘记我的回答。

希望它有所帮助!

答案 1 :(得分:0)

我通过将JDK1.7_80更改为JDK1.7_55解决了这个问题。

答案 2 :(得分:0)

当我的hotswap-agent路径错误时,我遇到了这个问题。