Siva Kumar Reddy G
Siva Kumar Reddy G

Reputation: 1274

Tomcat server is not starting as service: %1 is not a valid Win32 application

My tomcat server is working fine in Eclipse but when I try to start the server it is not starting.

Here are the errors:

[2012-08-15 09:26:09] [info] Procrun (2.0.5.0) started
[2012-08-15 09:26:09] [info] Running Service...
[2012-08-15 09:26:09] [info] Starting service...
[2012-08-15 09:26:09] [197  javajni.c] [error] %1 is not a valid Win32 application.
[2012-08-15 09:26:09] [994  prunsrv.c] [error] Failed creating java C:\java\java\jre\bin\server\jvm.dll
[2012-08-15 09:26:09] [1269 prunsrv.c] [error] ServiceStart returned 1
[2012-08-15 09:26:09] [info] Run service finished.
[2012-08-15 09:26:09] [info] Procrun finished.
[2012-08-15 09:29:06] [info] Procrun (2.0.5.0) started
[2012-08-15 09:29:06] [info] Running Service...
[2012-08-15 09:29:06] [info] Starting service...
[2012-08-15 09:29:06] [197  javajni.c] [error] %1 is not a valid Win32 application.
[2012-08-15 09:29:06] [994  prunsrv.c] [error] Failed creating java C:\java\java\jre\bin\server\jvm.dll
[2012-08-15 09:29:06] [1269 prunsrv.c] [error] ServiceStart returned 1
[2012-08-15 09:29:06] [info] Run service finished.
[2012-08-15 09:29:06] [info] Procrun finished.
[2012-08-15 09:30:07] [info] Procrun (2.0.5.0) started
[2012-08-15 09:30:07] [info] Running Service...
[2012-08-15 09:30:07] [info] Starting service...
[2012-08-15 09:30:07] [197  javajni.c] [error] %1 is not a valid Win32 application.
[2012-08-15 09:30:07] [994  prunsrv.c] [error] Failed creating java C:\java\java\jre\bin\server\jvm.dll
[2012-08-15 09:30:07] [1269 prunsrv.c] [error] ServiceStart returned 1
[2012-08-15 09:30:07] [info] Run service finished.
[2012-08-15 09:30:07] [info] Procrun finished.
[2012-08-15 09:30:57] [info] Procrun (2.0.5.0) started
[2012-08-15 09:30:57] [info] Running Service...
[2012-08-15 09:30:57] [info] Starting service...
[2012-08-15 09:30:57] [197  javajni.c] [error] %1 is not a valid Win32 application.
[2012-08-15 09:30:57] [994  prunsrv.c] [error] Failed creating java C:\java\java\jre\bin\server\jvm.dll
[2012-08-15 09:30:57] [1269 prunsrv.c] [error] ServiceStart returned 1
[2012-08-15 09:30:57] [info] Run service finished.
[2012-08-15 09:30:57] [info] Procrun finished.

What does these errors mean and how do I fix them?

Upvotes: 18

Views: 45992

Answers (8)

Etienne Tonnelier
Etienne Tonnelier

Reputation: 2239

Make sure the path of 'jvm.dll' (tab 'Java' when starting tomcat8w.exe) locates the right Java Runtime Environment version (x64 or x86).

This problem occurs in both cases below :

1 - Your Tomcat server version is 64-bit but using a 32-bit version of the Java Virtual Machine.
2 - Your Tomcat server version is 32-bit but using a 64-bit version of the Java Virtual Machine.

Upvotes: 9

Dav
Dav

Reputation: 1

Error Genrating Report on Sage CRM 7.1g: This error indicates Tomcat has stopped and cannot start. So the solution below is for both Sage CRM users who retrieve reports in excel or PDF or any other format and requires Tomcat to be running. The solution is for Tomcat6.

  1. Run jdk-8u121 -windows-i586 (This is a 32 bit JDK)

  2. Configure Environment Variables Variable Name: JAVA_HOME Variable value: C:\Program Files (x86)\Java\jdk1.8.0_121

  3. Click ok, ok, ok

4.Open registry by clicking; Window's Start Button ---> Type "REGEDIT" inside where it reads (Search programs and files),

Click on REGEDIT that appears

  1. In registry, follow this path

    HKEY_LOCAL_MACHINE --> SOFTWARE ----> Wow6432Node ---> Apache Software Foundation

    Collapse the elipses from "Procrun --> Tomcat6 --> Parameters Under Parameters you will see the following folders;

    Java Log Start Stop

Clickthe "Java" folder and double click Jvm under "Name" column

A pop-up box will open.

Copy the Environmental Variable Value that you set up earlier.. In this case: C:\Program Files (x86)\Java\jdk1.8.0_121 and paste inside the "Value Data" space with the \jvm.dll appended at the end.

This is the complete path: C:\Program Files (x86)\Java\jdk1.8.0_121\jre\bin\client\jvm.dll

Close Registry and voila.

Dave

Upvotes: 0

barresoft
barresoft

Reputation: 11

Open Apache Tomcat configuration -> Java Tab -> Clic on "use default"

Upvotes: 0

Jan Johansen
Jan Johansen

Reputation: 479

Your Tomcat is 64 bit but pointing to a 32 bit java

  1. Open Apache Tomcat configuration (from commandline: tomcat7w //ES//your-instance)
  2. Go to the Java tab
  3. Set the Java Virtual Machine to your desired bit-version, for instance :C:\Program Files\Java\jre1.8.0_66\bin\server\jvm.dll

To avoid issues when creating new instances, check where your JAVA_HOME is pointing and set it to a 64 bit version jdk (not jre), for instance C:\Program Files\Java\jdk1.8.0_66

Upvotes: 1

alain.janinm
alain.janinm

Reputation: 20065

If you want to run Tomcat as a Windows Service the easiest way is to use the 32-bit/64-bit Windows Service Installer.

I had the same issue using Tomcat service.bat install and I had no idea if it was a 32 or 64 bit installation.

Using the Tomcat 32-bit/64-bit Windows Service Installer helped me solved it quickly!

Upvotes: 0

hkutluay
hkutluay

Reputation: 6944

Same problem occurs when

  • 64 bit Tomcat 7
  • 64 bit Windows Server
  • 32 bit JDK (in JDK_HOME system variable)

You can use 32 bit JDK only on 32 bit Tomcat 7. If you want to change Tomcat 7 64 bit to 32 bit

  • Change CATALINA_HOME variable to 32 bit Tomcat 7 path
  • Remove Tomcat Windows Service
  • Install Tomcat Windows Service

Upvotes: 1

acdcjunior
acdcjunior

Reputation: 135872

I had the exact same problem and it was caused by running a 32 bits Tomcat on a 64 bits windows. (I was using XAMPP 1.8.3 in a Windows 8 64 bits.)

First:

  • Make sure you have JAVA_HOME system variable pointing to your jdk folder (not the \bin);
  • Make sure %JAVA_HOME%\bin; is in your %PATH% system variable.

The solution:

  • Uninstall the Tomcat7 service if you have installed it already;
  • Download a 64 bit version of Tomcat 7 for windows (check this link to get the latest - I used the 7.0.42 version);
  • Replace the tomcat7.exe and tomcat7w.exe files of the C:\xampp\tomcat\bin folder with those present in the recently downloaded zip file.

Now you can install the service as usual (through XAMPP control panel, if you use it) and it should start just fine.

Upvotes: 15

Pramod J George
Pramod J George

Reputation: 1723

Try this

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.

Apache Tomcat1

Upvotes: 2

Related Questions