sparkjava和eclipse未解决的编译问题:

时间:2015-07-11 09:38:37

标签: java java-8 spark-java

我跟着这里的啧啧http://sparkjava.com/documentation.html#getting-started

的pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>spark</groupId>
  <artifactId>Spark</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>spark</name>
  <description>spark</description>  
  <dependencies>
      <dependency>
        <groupId>com.sparkjava</groupId>
        <artifactId>spark-core</artifactId>
        <version>2.2</version>
    </dependency>

  </dependencies>
</project>

Hello.java

import static spark.Spark.*;

    public class Hello {
        public static void main(String[] args) {
            get("/hello", (req, res)-> "Hello World");//eclipse error this line
        }
    }

我在 eclipse

时遇到错误
Exception in thread "main" java.lang.Error: Unresolved compilation problems: 
    req cannot be resolved to a variable
    Syntax error on token ",", . expected
    Syntax error on token "-", -- expected

    at Hello.main(Hello.java:5)

1 个答案:

答案 0 :(得分:4)

Java的lambda表达式是Java 8中的一个特性:Oracle link。您需要将合规性级别(以及Java版本和pom)更改为java 8,以使此示例编译。