我已经尝试了stackoverflow上提到的大多数建议,但还没有找到解决方案。我遇到的错误如下所示。
An error occurred at line: 379 in the jsp file: /application-new-project_process.jsp
Lambda expressions are allowed only at source level 1.8 or above
我正在使用IntelliJ IDEA 2016.2,并应用了这些设置。
项目结构
→项目
、项目SDK
到1.8(java版本“1.8.0_102”)
项目结构
→项目
、项目语言级别
到8.0-Lambdas、类型注释等
设置
→构建、执行、部署
→编译器
→Java编译器
,项目字节码版本
到1.8
设置
→构建、执行、部署
→编译器
→Java编译器
,目标字节码版本
到1.8
我使用的是Tomcat V8.0.36,对于JSP servlet有以下内容。
<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
<init-param>
<param-name>fork</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>xpoweredBy</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>compiler</param-name>
<param-value>modern</param-value>
</init-param>
<init-param>
<param-name>compilerSourceVM</param-name>
<param-value>1.8</param-value>
</init-param>
<init-param>
<param-name>compilerTargetVM</param-name>
<param-value>1.8</param-value>
</init-param>
<init-param>
<param-name>suppressSmap</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>
任何建议将不胜感激!
我使用IntelliJ IDEA 2016.3.2,tomcat Apache-tomcat-8.5.8,以下更改对我来说已经足够了:
1。更改以下文件:apache-tomcat-8.5.8\conf\web.xml
2。修改
的配置
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
添加以下init参数:
·
·
·
·
完成。
我在这里发现了以下文章:JSP文件中的Lambda表达式将无法编译 因此,我在Tomcat的conf/web.xml中添加了compilerSourceVM和compilerTargetVM。(不在web.xml项目中)。 有什么提示吗? 提前谢了。 编辑: b.)out变量必须是final。因此需要 c.)您可能必须将JSP API库导入到我们的项目中。Gradle示例:
本文向大家介绍如何编写JSP表达式?,包括了如何编写JSP表达式?的使用技巧和注意事项,需要的朋友参考一下 JSP表达式元素包含一种脚本语言表达式,该脚本语言表达式经过评估,转换为String,并插入该表达式出现在JSP文件中的位置。 由于表达式的值已转换为字符串,因此可以在JSP文件的一行文本中使用表达式,无论是否用HTML标记。 expression元素可以包含根据Java语言规范有效的任何表
JSP 表达式可以把变量或者表达式输出到网页上,不需要 out.print() 就能输出数据。通常用于打印变量和方法的值。 JSP 表达式语法如下: <%= 表达式 %> 等效于 可以将 <%=表达式 %> 理解为 <% out.println(表达式) %> 的简写方式。这里需要注意,JSP 表达式不能以分号结尾。 例 1 使用 JSP 表达式显示欢迎消息,代码如下: 浏览器输出信息为: 欢迎来
(译注:目前支持lambda的gcc编译器版本为4.5,其它详细的编译器对于C++11新特性的支持请参考http://wiki.apache.org/stdcxx/C%2B%2B0xCompilerSupport) Lambda表达式是一种描述函数对象的机制,它的主要应用是描述某些具有简单行为的函数(译注:Lambda表达式也可以称为匿名函数,具有复杂行为的函数可以采用命名函数对象,当然,何谓复杂
Lambda表达式在Java 8中引入,并被吹捧为Java 8的最大特性.Lambda表达式有助于函数式编程,并简化了很多开发。 语法 (Syntax) lambda表达式的特征在于以下语法。 parameter -> expression body 以下是lambda表达式的重要特征。 Optional type declaration - 无需声明参数类型。 编译器可以从参数的值推断出相同的
无效条目:(仅为数字) 谢谢,巴拉吉