Tomcat Error – prunsrv.c Failed creating java (jvm.dll)
I had encountered following error message while starting my Tomcat server.
[2009-01-16 11:22:19] [1343 prunsrv.c] [debug] Procrun log initialized
[2009-01-16 11:22:19] [info] Procrun (2.0.4.0) started
[2009-01-16 11:22:19] [info] Running Service...
[2009-01-16 11:22:19] [1166 prunsrv.c] [debug] Inside ServiceMain...
[2009-01-16 11:22:19] [info] Starting service...
... [error] The specified module could not be found.
[2009-01-16 11:22:19] [994 prunsrv.c] [error] Failed creating java
C:\Program Files\Java\jre1.6.0_07\bin\client\jvm.dll
[2009-01-16 11:22:19] [1269 prunsrv.c] [error] ServiceStart returned 1
[2009-01-16 11:22:19] [info] Run service finished.
[2009-01-16 11:22:19] [info] Procrun finished.
[2009-01-16 11:24:41] [1343 prunsrv.c] [debug] Procrun log initialized
[2009-01-16 11:24:41] [info] Procrun (2.0.4.0) started
[2009-01-16 11:24:41] [info] Debugging Service...
[2009-01-16 11:24:41] [1166 prunsrv.c] [debug] Inside ServiceMain...
[2009-01-16 11:24:41] [info] Starting service...
...[174 javajni.c] [error] The specified module could not be found.
After googling, this is usually happen because of missing msvcr71.dll file. However tomcat doesn’t use msvcr71.dll directly, it’s used by the Java Virtual Machine (JVM).
Solution
- Copy msvcr71.dll from java’s bin directory to tomcat’s bin folder.
- Add java’s bin directory to windows environment variable.
- Copy msvcr71.dll from java’s bin directory to windows\system32 folder.
- Make sure your tomcat’s pointing to correct jvm.dll folder.
Solution 4 is work for me, my tomcat pointing to C:\Program Files\Java\jre1.6.0_07\bin\client\jvm.dll, but my java’s runtime folder is located at C:\Program Files\Java\jre\bin\client\jvm.dll..what a joke.
Updated, 19-Sept-2009
Here is a similar error, it happened recently
... [174 javajni.c] [error] %1 is not a valid Win32 application.
... [994 prunsrv.c] [error] Failed creating java
C:\Program Files\Java\jre6\bin\server\jvm.dll
... [1269 prunsrv.c] [error] ServiceStart returned 1
It’s seem server\jvm.dll is not working property, just change it to client\jvm.dll will do.
From
C:\Program Files\Java\jre6\bin\server\jvm.dll
To
C:\Program Files\Java\jre6\bin\client\jvm.dll
Hi,
It could be also msvcr100.dll depending of the version of java.
excelentª!!!
Thank you very much. Adjusting the JVM setting in TomcatW was able to fix my problem. My website now runs as a service on a windows machine with no problems!
Thank you very much. Adjusting the JVM setting in TomcatW was able to fix my problem. My website now runs as a service on a windows machine with no problems!
Thank you very much. Adjusting the JVM setting in TomcatW was able to fix my problem. My website now runs as a service on a windows machine with no problems!
If I uninstall and reinstall the tomcat service. Will tomcat work?
Nice solution worked for me… but I copied msvcr100.dll from java’s bin directory to tomcat’s bin folder.
Thank you 🙂
thank you
Thanks a lot it worked for me for server error.In C:\Program Files\Java\jre6\bin\client\jvm.dll was there i jus renamed client folder with server and it worked.
thanks a lot it worked for me…
Hi Yong,
I followed all the 4 steps, but still I am getting this error:
[2013-05-28 18:06:49] [info] Commons Daemon procrun (1.0.10.0 32-bit) started
[2013-05-28 18:06:49] [info] Service JettyService name
[2013-05-28 18:06:49] [info] Service ‘JettyService’ installed
[2013-05-28 18:06:49] [info] Commons Daemon procrun finished
[2013-05-28 18:07:02] [info] Commons Daemon procrun (1.0.10.0 32-bit) started
[2013-05-28 18:07:02] [info] Running ‘JettyService’ Service…
[2013-05-28 18:07:02] [info] Starting service…
[2013-05-28 18:07:02] [error] Failed to start Java
[2013-05-28 18:07:02] [error] ServiceStart returned 4
[2013-05-28 18:07:02] [info] Run service finished.
[2013-05-28 18:07:02] [info] Commons Daemon procrun finished
Any Idea?
Thanks
Dhana
Hi yong,
I solved my issue.
I have followed all the 4 solution and restarted my windows system. Then I started my JettyService, it works as expected.
Thanks a lot for all the solution..
Thanks
Dhana
Thank you very much. After googling lot i ended up in this page. Solution 4 works perfectly fine for me. Thank you for the solution
Would it work if i am trying to create jar as a service too? I dont have a bin folder in my jar file. Is it enough if i copy it from java bin to sys32 folder?
Thanks a lot man!!!
Thanks….. copying msvcr100.dll from java’s bin to tomcat’s bin solved my problem aswell…..
Thanks man!
Right on! Thanks for the great post.
I had the same issue with java7. Copying msvcr100.dll from java’s bin to tomcat’s bin solve the problem.
Thanks again.
We had a similar error
CreateJavaVM Failed
[2012-12-17 12:54:56] [error] %1 is not a valid Win32 application.
[2012-12-17 12:54:56] [error] Failed to start Java
[2012-12-17 12:54:56] [error] ServiceStart returned 4
[2012-12-17 12:56:58] [error] CreateJavaVM Failed
[2012-12-17 12:56:58] [error] %1 is not a valid Win32 application.
[2012-12-17 12:56:58] [error] Failed to start Java
[2012-12-17 12:56:58] [error] ServiceStart returned 4
We fixed it by upgrading jre to the lates version of 1.6, our process required at least 4 gig ram compared to the fact that we had only 3 g
I just places the distributed files folder apache-tomcat-7.0.22 in c drive and i set the path too. when i am starting the startup i am getting this error!
plz help me sir!
Please make sure you or owner of Tomcat folder has permission to create folder.
looks like permission issues creating several different files (Access is denied). Did you install java or “copy” over? Do you have admin rights? Ask your server team what group policies you’re associated with?
Another very happy reader here. Thanks so much! 😀
I am getting an error message:
C:\PROGRA – 1jre6\bin\ssragent.exe
I cannot download any programs after I click off the message. Can anyone help?
Thanks.
Sanmo
In my research with this same issue, I stumbled on this thread and made the changes through the tomcat6WFw gui and it solved my problem of the service not starting.
Now I was wondering if anybody can help me make this change via batch file. I need to install webfocus dev studio 773 on several machines but tomcat always wants to use the default path to the jvm of c:\program files\jave\jre6\blah blah blah but I need the path to be set as c:\program files\java\jdk1.6.0_17\jre\bin\server\jvm.dll. I would really appreciate any help in scripting this command.
as a side note- I have never posted to a forum before and apologize if I break any protocols…
Thanks in advance!
Question… Windows 2008 or W 2003? We found “client” directory missing under JRE/BIN which caused JSCOM to not start. Had to copy directory in from another server. Bizarre.
Seriously dude, a week ago I’d never been to your blog and now I’ve found the solution to my problems here TWICE.
At the risk of sounding lame and stereotypical, you da man!
.. two beer owed 🙂
Try restarting the computer before making any changes and see if it works.
Based on a True Story!
I got similar error:
[994 prunsrv.c] [error] Failed creating java C:\Program Files\Java\jre7\bin\server\jvm.d
ll
[1269 prunsrv.c] [error] ServiceStart returned 1
I am running 64 bit java 1.7.0 with 64 bit tomcat. The file msvcr71.dll no longer exist in new version of java.
Solution for me is to copy the new version: msvcr100.dll from C:\Program Files\Java\jre7\bin to tomcat’s bin folder and windows\system32 folder.
Steps 1-4 works for me. Thanks a lot
****It’s seem server\jvm.dll is not working property, just change it to client\jvm.dll will do.***
Thanks for this info, it worked for me.
Hi,
I am running Windows Server 2008, Enterprise and TomCat 5.5 and Have not been able to get it running even with all the great tips I have seen here.
Can anyone offer any more help?
Thanks in advance
IT WORKED!
MANY THANX!