GWT + Jetty JSP编译问题的解决方法? (Java 1.5源代码级别无法识别)

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

  •  03-07-2019
  •  | 
  •  

as 此主题显示,似乎存在使JSP在GWT托管模式下编译的问题新的Jetty服务器:

2. ERROR in /tmp/Jetty_0_0_0_0_8080_war____ut4fm1/jsp/org/apache/jsp/ 
test_jsp.java (at line 53) 
        new java.util.ArrayList<String>(); 
                                ^^^^^^ 
Syntax error, parameterized types are only available if source level 
is 1.5 

有没有人有解决方法? 此提交可能与您有关。我不知道 org.eclipse.jdt.core.JDTCompilerAdapter 的等价物应该用于在Eclipse之外构建(例如在命令行上)。对于我们采用GWT 1.6来说,这是一个真正的阻碍,因此任何指针都受到高度赞赏。

有帮助吗?

解决方案

此问题由JspServlet使用的默认值生成,该默认值使用1.4编译源/目标值。

  1. 您可以通过添加

    来配置此servlet
    <servlet>
        <servlet-name>jsp</servlet-name>
        <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
        <init-param>
            <param-name>compilerSourceVM</param-name>
            <param-value>1.5</param-value>
        </init-param>
        <init-param>
            <param-name>compilerTargetVM</param-name>
            <param-value>1.5</param-value>
        </init-param>
        <load-on-startup>3</load-on-startup>
    </servlet>
    
  2. 还有一个问题,因为您无法使用当前的jasper-compiler-5.0.28配置JspServlet。你应该下载 jasper- compiler-5.0.30 并确保在gwt之前的类路径中。还有其他最新的jasper编译器罐子,但我并不觉得与jakarta-tomcat-5.0.28的兼容性如何。 我通过在GWT 1.6.4中添加对jakarta-tomcat-5.0.30的依赖来解决了这个问题。您可以从 http:// raisercostin下载使用此依赖关系编译的GWT .googlecode.com /文件/ gwt-windows-1.6.4.raisercostin.zip
  3. 我在 http://code.google.com/p/raisercostin上介绍了该解决方案/ wiki / GwtEclipsePluginDebug

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top