Frage

Ich habe Java 1.6 und Tomcat 5.5 auf meinem System installiert ist.

Aber Tomcat 5.5 greift auf Java 1.5 und somit als das Ergebnis ich den Fehler Bad version number in .class file erhalten, während Java-Code mit JSP ausgeführt wird.

Wie kann ich die Tomcat-Version 1.6 auf Java ändern?

UPDATE

Ich habe versucht die JVM zu ändern, dass die tomcat5w.exe auf die Version 1.6 zeigt, und jetzt bin ich aus dem Bad version in .class file Fehler. Aber jetzt habe ich die folgende Fehlermeldung erhalten.

exception

org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:498)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

root cause

java.lang.NullPointerException
myfirst.SearchLink.checkURL(SearchLink.java:20)
org.apache.jsp.Test_jsp._jspService(Test_jsp.java:52)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

Was könnte die Ursache sein?

War es hilfreich?

Lösung

Wenn Sie öffnen catalina.sh / catalina.bat können Sie sehen:

  

Umgebungsvariable Prequisites

     

JAVA_HOME auf Ihrer Java Development Kit Installation verweisen.

So stellen Sie Ihre Umgebungsvariable JAVA_HOME Punkt auf Java 6. Stellen Sie außerdem sicher JRE_HOME auf das gleiche Ziel gerichtet ist, wenn es gesetzt ist.

Update: Da Sie auf Windows verfügbar sind, sehen hier , wie Sie Ihre Umgebungsvariablen verwalten

Andere Tipps

Sie können die JDK oder JRE Position ändern mit den folgenden Schritten:

  1. Öffnen Sie die Terminal oder cmd .
  2. Gehen Sie zum [tomcat-home]\bin Verzeichnis.
    ex: c:\tomcat8\bin
  3. die folgende schreiben Befehl: Tomcat8W //ES//Tomcat8
  4. wird Dialog öffnen, wählen Sie das java Registerkarte (oberer Bereich) .
  5. die Java Virtual Machine Wert ändern.
  6. Klicken Sie auf OK .

Hinweis: in Apache TomEE gleichen Schritten, aber Schritt (3) der Befehl sein muss: TomEE //ES

in Eclipse ist es sehr einfach, Tomcat auf einen neuen JVM-zu-Punkt (in diesem Beispiel JRE6). Mein Problem war, konnte ich nicht finden, wo es zu tun. Hier ist der Trick:

  1. Auf der ECLIPSE Top-Menü Datei Pull-Down-Registerkarte, wählen Sie NEU -> Andere
  2. ... auf dem Neuer Server: Wählen Sie ein Assistent Fenster wählen Sie: Server -> Server ... klicken Sie auf Weiter
  3. . auf dem Neuer Server: Definieren Sie einen neuen Server Fenster, wählen Sie Apache> Tomcat 7 Server
  4. .. jetzt die Zeile in blau klicken und unterstrichen Titel: Konfigurieren Runtime Environments
  5. auf Server Runtime Environments Fenster
  6. .. Apache , erweitern Sie (klicken Sie auf den Pfeil nach links), wählen Sie TOMCAT v7.0 , und klicken Sie auf Bearbeiten .
  7. Sie werden ein Fenster namens EDIT SERVER runtime environment: Tomcatbediener
  8. Auf diesem Bildschirm gibt es ein Pull-Down-markierten JREs .
  9. Sie sollten Ihre JRE aufgelistet wie JRE1.6.0.33 finden. Wenn nicht verwenden, um das Installierte JRE .
  10. Wählen Sie die gewünschte JRE. Klicken Sie auf Fertig stellen .
  11. Anmutig Ausfahrt, in der Server: Server Runtime Environments Fenster, klicken Sie auf OK
  12. in Neuer Server: Definieren Sie einen neuen Server Fenster Hit Weiter
  13. in Neuen Server: Hinzufügen und Entfernen Fenster, Anwendungen auswählen und sie auf dem Server installieren.
  14. in Neuer Server: Hinzufügen und Entfernen Fenster, klicken Sie auf Fertig

Das ist alles. Interessant, nur wenige Schritte 7-10 Rolle zu spielen, und sie werden die JRE auf allen Servern zuvor zu verwenden TOMCAT v7.0 definiert Sie verwendet ändern. Die restlichen Schritte sind, nur weil ich keine andere Möglichkeit, um den Bildschirm zu bekommen, außer durch die Definition eines neuen Server finden. Hat jemand einen einfacheren Weg wissen?

Wenn Sie die Standard-Skripte verwenden Tomcat starten (das heißt Sie Tomcat nicht installiert haben als Windows-Dienst), können Sie die setenv.bat Datei verwenden können, Ihre JRE_HOME Version einzustellen.

  

Unter Windows erstellen Sie die Datei %CATALINA_BASE%\bin\setenv.bat, mit Inhalt:

     

set "JRE_HOME=%ProgramFiles%\Java\jre1.6.0_20"

     

exit /b 0

Und das sollte es sein.

Sie können testen, diese mit% CATALINA_BASE% \ bin \ configtest.bat (Disclaimer: Ich habe nur überprüft, dies mit einer tomcat7 Installation).

Weiterführende Literatur:

Unter Linux hat tomcat7 eine Konfigurationsdatei finden Sie unter:

/etc/sysconfig/tomcat7

... das ist, wo serverspezifische Konfigurationen vorgenommen werden sollen. Sie können die JAVA_HOME Umgebungsvariable hier gesetzt w / o ein profile.d / script erstellen zu müssen.

Das ist für mich gearbeitet.

Es gibt mehrere gute Antworten hier, aber ich wollte ein hinzuzufügen, da es für die Nutzer wie mich kann hilfreich sein, die haben Tomcat als Dienst auf einem Windows-Rechner installiert ist.

Option 3 hier: http: // www.codejava.net/servers/tomcat/4-ways-to-change-jre-for-tomcat

Grundsätzlich offen tomcatw.exe und Punkt Tomcat auf die Version der JVM benötigen Sie den Dienst dann neu starten verwenden. Stellen Sie sicher, Ihre bereitgestellten Anwendungen noch Arbeit als gut.

Test Öffnen Sie die termenal oder cmd. gehen Sie auf die [tomcat-home] \ bin. ex: c: \ tomcat8 \ bin schreiben Sie den folgenden Befehl ein: Tomcat8W // ES // Tomcat8 öffnet Dialog wählt den Java-tap (top tap). Ändern Sie die Java Virtual Machine Wert.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top