2012-02-18 62 views
3

我正在编译Amazon Web Services Elastic Beanstalk演示并尝试在全新安装的Arch Linux上运行它(本地,在tomcat7上)。编译AWS Elastic Beanstalk演示引发异常无Java编译器可用

每一次,它未能在控制台:

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) 

我在做什么错?

+0

您可能也想尝试'javac -version'以确保实际上存在Java编译器 - 大概它根本就没有安装,请参阅我的答案[解释](http://stackoverflow.com/a/9382717/45773)以防万一。 – 2012-02-21 18:06:13

+0

javac -version给出“javac 1.7.0_03” – 2012-02-23 03:16:45

回答

3

找到答案在这里:https://bbs.archlinux.org/viewtopic.php?id=135775

凯旋门tomcat7包坏了。

我卸载tomcat7:

吃豆子-R tomcat7

然后从Apache.org复制正常的Tomcat 7的文件到/ usr /共享/ tomcat7

现在一切工作正常。

+0

+1(然后一些...)为了跟上你的解决方案,尽管不幸的赏金时机;) – 2012-02-23 10:07:47

3

Arch Linux的特征在于Java Runtime Environment (JRE)包和Java Development Kit (JDK)之间的普通区别,如How to download and install prebuilt OpenJDK packages中的其他OS所示,例如,为Debian或Ubuntu:

在OpenJDK -7- JRE包只包含Java运行时环境。 如果您想开发Java程序,然后安装openjdk-7- jdk 包。 [重点煤矿]

OpenJDK各自的包名显然在这方面(虽然可以理解)有点不幸和误导,只要两个包在其名称中拥有的OpenJDK,但只有一个实际的JDK - 对于Arch Linux jre7-openjdkjdk7-openjdk包的双重相同。

因此,你只需要安装相应的JDK包Arch Linux的,应该是好去,即可能JDK7,OpenJDK的为每Arch Linux Package Database search for jdk

祝你好运!

+0

我已经安装了jdk7-openjdk软件包:#pacman -S jdk7-openjdk给出了“警告:jdk7-openjdk-7.b147_2.1-1是最新的 - 重新安装“ – 2012-02-23 03:17:50

+1

尽管我非常感谢您的帮助。这里是整个构建输出,如果有帮助的话:http://pastebin.com/N3EdWcgm – 2012-02-23 03:24:14