为什么 GWT 在 Java 8 中编译失败?
Why does GWT fail compile in Java 8?
我正在使用 LibGDX 库编写一些东西(地图生成器),它能够使用 GWT 构建 HTML5 可部署文件。
但是,当我 运行 构建 Gradle 时,我收到此错误:
:html:compileGwt
Compiling module technology.rocketjump.undermount.mapgen.GdxDefinition
Validating units:
[ERROR] Errors in 'file:/D:/workspace/undermount-mapgen/core/src/main/java/technology/rocketjump/undermount/mapgen/generators/RiverGenerator.java'
[ERROR] Line 61: RiverPathfindingCalculator cannot be resolved to a type
[ERROR] Line 89: The left-hand side of an assignment must be a variable
错误似乎是在 RiverGenerator.java
中指示以下行
private boolean runRiver(GridPoint2 startPoint, GridPoint2 endPoint, GameMap map) {
RiverPathfindingCalculator pathfinder = new RiverPathfindingCalculator(startPoint, endPoint, map);
List<GridPoint2> path = pathfinder.findPath();
但是 RiverPathfindingCalculator
只是同一项目中的另一个 Java class。它似乎也在文件中正确导入,这里是 RiverGenerator
的导入
package technology.rocketjump.undermount.mapgen.generators;
import com.badlogic.gdx.math.GridPoint2;
import technology.rocketjump.undermount.mapgen.calculators.RiverPathfindingCalculator;
import technology.rocketjump.undermount.mapgen.model.TileType;
import technology.rocketjump.undermount.mapgen.model.output.*;
import java.util.*;
你可以view the relevant code on Github。关于我做错了什么或如何解决这个问题有什么想法吗?
GWT < 2.8 版不支持 java8 语法,因此没有 lambda 表达式。
将该 lambda 重写为 "normal" 比较器(大多数 IDE 都有自动重构),GWT 应该会很高兴。
我正在使用 LibGDX 库编写一些东西(地图生成器),它能够使用 GWT 构建 HTML5 可部署文件。
但是,当我 运行 构建 Gradle 时,我收到此错误:
:html:compileGwt
Compiling module technology.rocketjump.undermount.mapgen.GdxDefinition
Validating units:
[ERROR] Errors in 'file:/D:/workspace/undermount-mapgen/core/src/main/java/technology/rocketjump/undermount/mapgen/generators/RiverGenerator.java'
[ERROR] Line 61: RiverPathfindingCalculator cannot be resolved to a type
[ERROR] Line 89: The left-hand side of an assignment must be a variable
错误似乎是在 RiverGenerator.java
中指示以下行private boolean runRiver(GridPoint2 startPoint, GridPoint2 endPoint, GameMap map) {
RiverPathfindingCalculator pathfinder = new RiverPathfindingCalculator(startPoint, endPoint, map);
List<GridPoint2> path = pathfinder.findPath();
但是 RiverPathfindingCalculator
只是同一项目中的另一个 Java class。它似乎也在文件中正确导入,这里是 RiverGenerator
package technology.rocketjump.undermount.mapgen.generators;
import com.badlogic.gdx.math.GridPoint2;
import technology.rocketjump.undermount.mapgen.calculators.RiverPathfindingCalculator;
import technology.rocketjump.undermount.mapgen.model.TileType;
import technology.rocketjump.undermount.mapgen.model.output.*;
import java.util.*;
你可以view the relevant code on Github。关于我做错了什么或如何解决这个问题有什么想法吗?
GWT < 2.8 版不支持 java8 语法,因此没有 lambda 表达式。
将该 lambda 重写为 "normal" 比较器(大多数 IDE 都有自动重构),GWT 应该会很高兴。