猛禽洛的程式筆記庫

[JavaFx] 修正專案的Language level會一直跑掉的問題

在撰寫Java時,專案會定一個Language level,來支援新的程式語法,例如有時候會這樣寫:

//注意 () -> {} 的部分
Platform.runLater(() -> {
  //一堆程式碼
});

當Language level等級太低時,是無法編譯這種語法的。

依我遇到的狀況為例,Language level常常都會變回5,但以上程式寫法需要8才能支援。

圖中的Language level常常會跑掉,導致程式碼出現一堆錯誤。
圖中的Language level常常會跑掉,導致程式碼出現一堆錯誤。

後來發現是pom.xml搞的鬼,每當我對pom做編輯同步時,這些設定值就會跑掉。

所以,要在pom指定Language level即可固定住這些設定。

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>

    ...
    ...
    <!--新增maven.compiler的設定值-->
    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>
    ...
    ...
</project>

這樣有修改pom時,就不會一直改到Language level了!

-END-

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *