首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法识别java 8 lambda,但配置是可以的。

无法识别java 8 lambda,但配置是可以的。
EN

Stack Overflow用户
提问于 2016-06-14 21:13:59
回答 2查看 82关注 0票数 0

我在Intellij中导入了一个带有Spring和Hibernate以及所有Java 8的程序,我有一个问题,就是Java 8没有被看到。JDK是设置好的,导入也没问题;我真的不明白为什么我的IDE会用红色标记这段代码。守则是:

代码语言:javascript
复制
@Entity
@Table(name = "author")
public class Author extends BaseEntity<Long> {

    @Column(name = "name")
    private String name;

    @OneToMany(mappedBy = "author", fetch = FetchType.EAGER)
    private List<Book> bookList;

    public Author() {
    }

    public Author(String name, List<Book> bookList) {
        this.name = name;
        this.bookList = bookList;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public List<Book> getBookList() {
        return bookList;
    }

    public void setBookList(List<Book> bookList) {
        this.bookList = bookList;
    }

    public Set<Book> getBooks() { // !!!!! here lines 1
        return Collections.unmodifiableSet( // 2
                this.bookList.stream(). // 3
                        collect(Collectors.toSet()));//4 are red
    }

还有import语句:

代码语言:javascript
复制
import java.util.stream.Collectors;

也是红色的。当我点击错误时,它说:

代码语言:javascript
复制
Incompatible types.Required set <packet.model.book> 
                  Found set <java.lang.Object>

第一面有什么问题?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-06-14 21:27:37

我猜你用的是maven,对吧?如果是,请检查在pom.xml中定义的java版本,如果没有定义,则IDE使用与1.8不同的默认值。

您可以使用maven编译器插件并显式地将jdk版本设置为1.8

代码语言:javascript
复制
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.5.1</version>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
        <showWarnings>true</showWarnings>
        <encoding>${project.build.sourceEncoding}</encoding>
    </configuration>
</plugin>

请确保您也将语言级别设置为Java 8。如果使用 -> Project Structure -> Project Settings -> Project,您可以在那里配置项目SDK和项目语言级别。确保两者都设置为Java 8。

票数 0
EN

Stack Overflow用户

发布于 2016-06-14 22:01:45

在项目结构ctrl+alt+sFile -> Project Structure中设置java 8

见下面的图像

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37822205

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档