Скомпилирование демонстрации AWS Elastic Beanstalk бросает исключение.
-
27-10-2019 - |
Вопрос
Я собираю демонстрацию Elastic Beanstalk Elastic Beanstalk Amazon и пытаюсь запустить его (локально, на Tomcat7) при свежей установке Arch Linux.
Каждый раз это не удается в консоли с:
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)
Что я делаю не так?
Решение 2
Нашел ответ здесь: https://bbs.archlinux.org/viewtopic.php?id=135775
Пакет Arch Tomcat7 сломана.
Я удалил Tomcat7:
PACMAN -R TOMCAT7
А затем скопировал обычные файлы Tomcat 7 с apache.org в/usr/share/tomcat7
Теперь все работает нормально.
Другие советы
Arch Linux Особенности обычного различия между Среда выполнения Java (JRE) Пакет и Java Development Kit (JDK) Как показано для другой ОС в Как загрузить и установить предварительно построенные пакеты OpenJDK Кроме того, например, для Debian или Ubuntu:
OpenJDK-7-jre Пакет содержит только среду выполнения Java. Если вы хотите разработать Java-программы, установите OpenJDK-7-JDKупаковка. акцент на мой
Соответствующие имена пакетов OpenJDK Очевидно, немного прискорбны и вводят в заблуждение в этом отношении (хотя и понятно), поскольку оба пакета функция OpenJDK По его названию, но только один фактический JDK - то же самое сходство применяется для Arch Linux jre7-openjdk а также JDK7-OPENJDK упаковка двойной.
Таким образом, вам просто придется установить соответствующий пакет JDK для Arch Linux и должен быть хорошо, т.е. вероятно JDK7-OPENJDK в соответствии с Поиск базы данных пакетов Arch Linux для JDK.
Удачи!