Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
编译AWS Elastic Beanstalk演示时引发异常没有可用的Java编译器_Java_Jsp_Amazon Web Services_Amazon Elastic Beanstalk - Fatal编程技术网

编译AWS Elastic Beanstalk演示时引发异常没有可用的Java编译器

编译AWS Elastic Beanstalk演示时引发异常没有可用的Java编译器,java,jsp,amazon-web-services,amazon-elastic-beanstalk,Java,Jsp,Amazon Web Services,Amazon Elastic Beanstalk,我正在编译AmazonWebServicesElasticBeanstalk演示,并尝试在新安装的ArchLinux上运行它(本地,在tomcat7上) 每次,它都无法通过以下方式访问控制台: Feb 18, 2012 2:31:41 PM org.apache.catalina.core.StandardWrapperValve invoke SEVERE: Servlet.service() for servlet [jsp] in context with path [/TryTwo] t

我正在编译AmazonWebServicesElasticBeanstalk演示,并尝试在新安装的ArchLinux上运行它(本地,在tomcat7上)

每次,它都无法通过以下方式访问控制台:

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)
#哪个java /usr/bin/java #java版本 java版本“1.7.0_03-icedtea” OpenJDK运行时环境(IcedTea7 2.1)(ArchLinux构建7.b147_2.1-1-x86_64) OpenJDK 64位服务器虚拟机(构建22.0-b10,混合模式) 我做错了什么?

的特点是该软件包与中的其他操作系统(如Debian或Ubuntu)的区别:

openjdk-7-jre包只包含Java运行时环境。 如果要开发Java程序,请安装openjdk-7-jdk 包裹[我的重点]

在这方面,的各个包名显然有点不幸和误导(虽然可以理解),因为两个包的名称都是openjdk,但只有一个是实际的JDK——Arch Linux和双包的相似性同样适用

因此,您只需为Arch Linux安装适当的JDK包,就可以了,也就是说,可能是jdk7 openjdk

祝你好运

在这里找到了答案:

Arch tomcat7软件包已损坏

我卸载了tomcat7:

pacman-R tomcat7 然后将普通的tomcat7文件从Apache.org复制到/usr/share/tomcat7


现在一切正常。

您可能还想尝试
javac-version
以确保Java编译器的存在——可能它根本没有安装,请参阅我在case中的答案。javac-version给出了“javac 1.7.0\u 03”我已经安装了jdk7 openjdk包:#pacman-S jdk7 openjdk给出了“警告:jdk7-openjdk-7.b147_2.1-1是最新的--重新安装”我非常感谢您的帮助。下面是完整的构建输出,如果有帮助的话:+1(然后是一些…),尽管有不幸的赏金时间,但仍然可以使用您的解决方案;) # 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)