Domanda

Sul mio sistema sono installati Java 1.6 e Tomcat 5.5.

Ma Tomcat 5.5 accede a Java 1.5 e quindi come risultato ottengo l'errore Bad version number in .class file durante l'esecuzione del codice Java con JSP.

Come posso cambiare la versione di Tomcat in Java 1.6?

AGGIORNAMENTO

Ho provato a cambiare la JVM che tomcat5w.exe punta alla versione 1.6 e ora sono fuori Bad version in .class file errore.Ma ora, ottengo il seguente errore.

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)

Quale potrebbe essere la causa principale?

È stato utile?

Soluzione

Quando si apre catalina.sh / catalina.bat, è possibile vedere:

  

Ambiente Prequisites Variabile

     

JAVA_HOME deve puntare a vostra installazione di Java Development Kit.

Quindi, impostare la variabile d'ambiente JAVA_HOME al punto da Java 6. Assicurarsi inoltre JRE_HOME sia puntato sulla stessa destinazione, se è impostato.

Aggiornamento: dal momento che siete su Windows, vedere qui per come gestire le variabili d'ambiente

Altri suggerimenti

È possibile modificare la posizione JDK o JRE utilizzando le seguenti operazioni:

  1. aprire la Terminale o cmd .
  2. passare alla directory [tomcat-home]\bin.
    ex: c:\tomcat8\bin
  3. scrivere la seguente comando: Tomcat8W //ES//Tomcat8
  4. si aprirà finestra di dialogo, selezionare la scheda java (riquadro in alto) .
  5. modificare il valore Java Virtual Machine.
  6. Fare clic su OK .

Nota: in Apache TomEE stessa procedura, ma stadio (3) il comando deve essere: TomEE //ES

In Eclipse è molto semplice indirizzare Tomcat a una nuova JVM (in questo esempio JRE6).Il mio problema era che non riuscivo a trovare dove farlo.Ecco il trucco:

  1. Nel menu principale di ECLIPSE FILE linguetta a discesa, selezionare NUOVO, -->Altro
  2. ...sul Nuovo server:Seleziona Un mago finestra, selezionare: server-> server...clic PROSSIMO
  3. .sul Nuovo server:Definire un nuovo server finestra, selezionare Apache> Server Tomcat 7
  4. ..ora cliccate sulla riga in blu e sottolineata dal titolo: Configurare gli ambienti di runtime
  5. sul Ambienti di runtime del server finestra,
  6. ..Selezionare Apache, espandilo (clicca sulla freccia a sinistra), seleziona TOMCAT v7.0, e fare clic MODIFICARE.
  7. vedrai una finestra chiamata MODIFICA AMBIENTE DI RUNTIME DEL SERVER:SERVER TOMCAT
  8. In questa schermata c'è un menu a tendina etichettato JRE.
  9. Dovresti trovare il tuo JRE elencato come JRE1.6.0.33.In caso contrario utilizzare il JRE installato pulsante.
  10. Selezionare il JRE desiderato.Clicca il FINE pulsante.
  11. Esci con grazia, nel Server:Ambienti di runtime del server finestra, fare clic OK
  12. nel Nuovo server:Definire un nuovo server finestra, colpisci PROSSIMO
  13. nel Nuovo server:Aggiungi e rimuovi Finestra, seleziona le app e installale sul server.
  14. nel Nuovo server:Aggiungi e rimuovi Finestra, fare clic Fine

È tutto.Interessante, solo i passaggi 7-10 sembrano avere importanza e cambieranno il JRE utilizzato su tutti i server precedentemente definiti per utilizzare TOMCAT v7.0.Il resto dei passaggi è solo perché non riesco a trovare altro modo per accedere allo schermo se non definendo un nuovo server.Qualcun altro conosce un modo più semplice?

Se si utilizzano gli script standard per lanciare Tomcat (vale a dire non hai installato Tomcat come servizio di Windows), è possibile utilizzare il file setenv.bat, per impostare la versione JRE_HOME.

  

In Windows, creare il file %CATALINA_BASE%\bin\setenv.bat, con i contenuti:

     

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

     

exit /b 0

E che dovrebbe essere esso.

È possibile verificare questo% CATALINA_BASE% \ bin \ configtest.bat usando (Disclaimer: Ho controllato solo che questa con un'installazione Tomcat7).

Letture consigliate:

In Linux, Tomcat7 ha un file di configurazione si trova in:

/etc/sysconfig/tomcat7

... che è dove le configurazioni di server specifici dovrebbero essere. È possibile impostare la variabile JAVA_HOME ENV qui w / o dover creare un profile.d / script.

Questo ha funzionato per me.

Ci sono diverse risposte buone su qui, ma ho voluto aggiungere un dato che può essere utile per gli utenti come me che hanno Tomcat installato come servizio su una macchina Windows.

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

In sostanza, aperto tomcatw.exe e punto di Tomcat alla versione della JVM è necessario utilizzare quindi riavviare il servizio. Assicurarsi che le vostre applicazioni distribuite ancora lavoro pure.

Test aprire la termenal o cmd. andare al [tomcat-home] \ bin. Es: c: \ tomcat8 \ bin scrivere il seguente comando: Tomcat8W // // ES Tomcat8 si aprirà finestra di dialogo, selezionare il rubinetto java (tap in alto). modificare il valore della macchina virtuale Java.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top