La compilazione della demo di Beanstalk elastico AWS ha lanciato un'eccezione nessun compilatore Java disponibile

StackOverflow https://stackoverflow.com/questions/9344887

Domanda

Sto compilando la demo di Amazon Web Services Elastic Beanstalk e tentando di eseguirlo (localmente, su Tomcat7) su una nuova installazione di Arch Linux.

Ogni volta, non riesce alla console con:

Feb 18, 2012 2:31:41 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [jsp] in context with path [/TryTwo] threw exception [java.lang.IllegalStateException: No Java compiler available] with root cause
java.lang.IllegalStateException: No Java compiler available
at org.apache.jasper.JspCompilationContext.createCompiler(JspCompilationContext.java:228)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:638)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
# which java 
/usr/bin/java

# java -version 
java version "1.7.0_03-icedtea"
OpenJDK Runtime Environment (IcedTea7 2.1) (ArchLinux build 7.b147_2.1-1-x86_64)
OpenJDK 64-Bit Server VM (build 22.0-b10, mixed mode)

Che cosa sto facendo di sbagliato?

È stato utile?

Soluzione 2

Ho trovato la risposta qui: https://bbs.archlinux.org/viewtopic.php?id=135775

Il pacchetto Arch Tomcat7 è rotto.

Ho disinstallato Tomcat7:

Pacman -r Tomcat7

E quindi copiati i normali file Tomcat 7 da apache.org a/usr/share/tomcat7

Adesso funziona tutto bene.

Altri suggerimenti

Arch Linux presenta la solita distinzione tra il Java Runtime Environment (JRE) pacchetto e il Java Development Kit (JDK) come mostrato per l'altro sistema operativo in Come scaricare e installare pacchetti OpenJDK predefiniti Inoltre, ad esempio per Debian o Ubuntu:

OpenJDK-7-Jre Il pacchetto contiene solo l'ambiente di runtime Java. Se vuoi sviluppare programmi Java, installa OpenJDK-7-JDKpacchetto. enfasi la mia

I rispettivi nomi dei pacchetti di OpenJdk sono ovviamente un po 'sfortunati e fuorvianti a questo proposito (anche se comprensibili), per quanto riguarda entrambi i pacchetti OpenJdk nel suo nome, ma solo uno il JDK effettivo - la stessa somiglianza si applica per l'Arch Linux jre7-openjdk e JDK7-OPENJDK pacchetto doppio.

Pertanto, dovrai semplicemente installare il pacchetto JDK appropriato per Arch Linux e dovrebbe essere a posto, cioè probabile JDK7-OPENJDK Secondo a ARCH Linux Package Database Cerca JDK.

Buona fortuna!

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