Compilación de la demostración de AWS Elastic Beanstalk lanzó una excepción sin compilador Java disponible

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

Pregunta

Estoy compilando la demostración elástica de BeanStalk de Amazon Web Services e intento ejecutarla (localmente, en Tomcat7) en una nueva instalación de Arch Linux.

Cada vez, no se encuentra en la consola 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)

¿Qué estoy haciendo mal?

¿Fue útil?

Solución 2

Encontré la respuesta aquí: https://bbs.archlinux.org/viewtopic.php?id=135775

El paquete Arch Tomcat7 está roto.

Desinstalé Tomcat7:

Pacman -R Tomcat7

Y luego copió los archivos Tomcat 7 normales de apache.org a/usr/share/tomcat7

Todo funciona bien ahora.

Otros consejos

Arch Linux presenta la distinción habitual entre el Ambiente de tiempo de ejecución de Java (JRE) paquete y el Kit de desarrollo Java (JDK) Como se muestra para otro sistema operativo en Cómo descargar e instalar paquetes de OpenJDK preBuilt PreBuilt Además, por ejemplo, para Debian o Ubuntu:

El OpenJDK-7-jre El paquete contiene solo el entorno de tiempo de ejecución Java. Si desea desarrollar programas Java, instale OpenJDK-7-jdkpaquete. énfasis mío

Los respectivos nombres de paquetes de Abrejdk Obviamente, son un poco desafortunados y engañosos a este respecto (aunque comprensibles), en la medida en que se presentan ambos paquetes abrejdk En su nombre, pero solo uno el JDK real: la misma similitud se aplica para el Arch Linux jre7-openjdk y jdk7-openjdk paquete doble.

Por lo tanto, simplemente tendrá que instalar el paquete JDK apropiado para Arch Linux y debería estar listo, es decir jdk7-openjdk Según un Arch Linux Package Database Búsqueda de JDK.

¡Buena suerte!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top