java - 创建 java C :\Program Files\Java\jdk1. 7.0_05\jre\bin\client\jvm.dll 失败

标签 java tomcat service tomcat7

我在启动 tomcat 7 服务时遇到问题

[2017-07-17 10:56:49] [info]  [ 4384] Starting service...
[2017-07-17 10:56:49] [error] [ 4384] %1 is not a valid Win32 application.
[2017-07-17 10:56:49] [error] [ 4384] Failed creating java C:\Program Files\Java\jdk1.7.0_05\jre\bin\server\jvm.dll
[2017-07-17 10:56:49] [error] [ 4384] %1 is not a valid Win32 application.
[2017-07-17 10:56:49] [error] [ 4384] ServiceStart returned 1
[2017-07-17 10:56:49] [error] [ 4384] %1 is not a valid Win32 application.
[2017-07-17 10:56:49] [info]  [  760] Run service finished.
[2017-07-17 10:56:49] [info]  [  760] Commons Daemon procrun finished

上次我使用这种方法通过将 msvcr71.dll 从 jdk 复制到 tomcat 文件夹和 system32 来修复 jdk 1.6 和 tomcat 6 中的这个问题。但是对于这个 jdk 1.7 没有 mscvr71.dll 而只有 msvcr100.dll。

msvcr71.dll 和 msvcr100.dll 是一样的吗?因为我试图将 msvcr100.dll 从 jdk 文件夹复制到 tomcat 7 文件夹,所以它不起作用。谢谢

最佳答案

出现这个问题是因为:

1 - Tomcat 服务器版本为 64 位,但使用 32 位版本的 JVM。 2 - Tomcat 服务器版本是 32 位但使用 64 位版本的 JVM。

确保“jvm.dll”(启动 tomcat${version}w.exe 时选项卡“Java”)的路径找到正确的 Java 运行时环境版本(x64 或 x86)。

  1. 安装 jre-8u91-windows-i586.exe。它将安装在 C:\Program Files (x86) 上。

  2. 从 C:\Program Files (x86)\Java\jre1.8.0_91\bin 复制 msvcr100.dll 和 msvcr120.dll 文件

或者如果您使用的 Tomcat 服务器版本是 64 位,则使用 JDK 64 位。

关于java - 创建 java C :\Program Files\Java\jdk1. 7.0_05\jre\bin\client\jvm.dll 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45135807/

相关文章:

java - GroupLayout 给 java swing 错误

java - 我可以使用 Java Spark Framework 创建常规 War 以在 Tomcat 中部署吗

java - 服务未显示通知

c# - 是否可以识别exe是否是Windows服务?

windows - 如何在从 Windows 服务启动的子外壳中设置 http 代理

java - 如何知道用户何时关闭 Java 中使用 exec() 执行的程序

java - 如何使用正则表达式 Java 将方括号内的破折号替换为下划线

java - 必须启动 Instrumentation LoadTimeWeaver/openjdk 11

tomcat - Wicket URL with::在 MS Azure 下的 Tomcat 上失败

java - 八进制值赋值给 int