Tomcat服务器不以DCEVM修补的JRE启动



我已经按照这里提到的步骤

  1. 在JDK中安装"jvm.dll"DCEVM修补程序(成功创建DCEVM补丁文件夹)
  2. 在Eclipse-Tomcat服务器-运行时环境中,JRE必须映射到JDK的JRE,DECVM在该JRE中在步骤1中进行了修补
  3. Tomcat-在VM参数(VM参数-Dcatalina.base="C:MCAworkspacesMCA.metadata.pluginsorg.eclipse.wst.server.coretmp0" -Dcatalina.home="C:MCAtoolsapache-tomcat-7.0.54" -Dwtp.deploy="C:MCAworkspacesMCA.metadata.pluginsorg.eclipse.wst.server.coretmp0wtpwebapps" -Djava.endorsed.dirs="C:MCAtoolsapache-tomcat-7.0.54endorsed" -XXaltjvm="dcevm" -javaagent:C:MCAtoolsdcevmhotswap-agent.jar)中添加"-XXaltjvm="dcevm"-javaagent:\HotswapAgent.jar"
  4. 禁用Tomcat web模块中的"自动重新加载"

每当我尝试使用时,都会抛出异常。

下面是堆栈跟踪。

 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)

从这里下载的安装程序文件。

这里描述了一个由相同的NPE引起的非常相似的错误:

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

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

所以,如果您正在使用Oracle JDK,请尝试更改它。如果您已经在使用OpenJDK,忘记我的答案。

希望它能有所帮助!

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

当我到热交换代理的路径错误时,我遇到了这个问题。

相关内容

  • 没有找到相关文章

最新更新