JavaSheriff
JavaSheriff

Reputation: 7687

Tomcat 7 fail to start


I have Tomcat 7 running as service on win 7 server over a year now without any problems
Server has plenty or HDD and memory,
Today the server was down, trying to start it i am getting the error:

2012-06-13 15:15:22 
Commons Daemon procrun stdout initialized
Error occurred during initialization of VM
Unable to load native library: Can't find dependent libraries


I switched the vm parameter on the java tab of the service properties from:
C:\Program Files\Java\jre6\bin\client\jvm.dll
to:
C:\Program Files\Java\jdk1.6.0_23\jre\bin\client\jvm.dll


And now its seems to work fine.
What could be the cause of this error out of the blue?
Thank you

Upvotes: 4

Views: 18562

Answers (3)

Geoffrey Malafsky
Geoffrey Malafsky

Reputation: 164

I just had this problem occur after allowing the automatic update to Java JRE 7u15. After checking all the obvious and the Tomcat settings, I noticed that the files in the JRE bin folder did not have any with names after 'm'. So, I uninstalled the Java JRE and did a fresh install. Tomcat started without any problem. Thus, in my case it appears the culprit was a bad update even though it said it installed everything fine.

Upvotes: 2

Joerg Ruethschilling
Joerg Ruethschilling

Reputation: 836

AFAIK,

the Sun/Oracle Java 6 SDK installer on Windows installs another JRE inside of its JDK folder.

Obviously something "happened" on your server's "normal" JRE installation, maybe an update failed, or someone has uninstalled what seemed to be a redundant duplicate of the JRE.

There is/was a known issue with the JRE installer:

https://bugs.java.com/bugdatabase/view_bug?bug_id=7114143

There are two different JVMs the "client" vm and the "server" vm, on some systems you will only find either the server or the client vm version, on some systems both.

C:\Program Files\Java\jre6\bin\client\jvm.dll and/or C:\Program Files\Java\jre6\bin\server\jvm.dll

The expected behaviour on Windows for Java 6 is to install always a client jvm:

http://docs.oracle.com/javase/6/docs/technotes/guides/vm/server-class.html

http://www.oracle.com/technetwork/java/hotspotfaq-138619.html#compiler_types

Upvotes: 2

Magnus Lindhe
Magnus Lindhe

Reputation: 7327

I did a reinstall of JRE to version 6u25 and Tomcat was able to start again.

I guess something must have messed up the JRE depenencies. The only recent installations on the server was a couple of days ago. Before that it had not been changed since the beginning of the year. I list the recent installations here for reference but I do not claim to know that they were the cause of the problem:

  • Microsoft SQL Server 2008 R2 Management Objects (x64)
  • Microsoft Web Platform Installer 3.0
  • Microsoft SQL Server System CLR Types (x64)
  • Microsoft Web Deploy 2.0
  • Google Chrome

Upvotes: 4

Related Questions