为什么我需要用 Arrays.asList() 替换 List.of()?
Why am I needing to replace List.of() with Arrays.asList()?
我读过
我不明白的是,为什么在我的 Maven pom.xml 中进行了一些依赖升级后,突然间我的所有
List.of(FLIGHT1_SPEND_AGG, FLIGHT1_IMPRESSIONS_AGG)
不再编译。当我在 IntelliJ 中键入 List.
时,自动完成只会出现 class
成员。我想也许我没有导入 java.util.List
?如此明确指定它,但仍然:
我正在使用 Java 11,我看到这里有方法:https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/List.html.
为什么我好像不能用?我一定是在做傻事...
您似乎在 ide 中定义了 Java 版本,但没有在 pom 中定义(至少不正确)
您的 pom 需要指定 maven-compiler-plugin 以及源和目标 java 版本。
该定义应类似于以下定义:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>11</source>
<target>11</target>
</configuration>
</plugin>
从 maven 更新后,您的 IDE 正在使用您的 pom 中定义的 Java 版本或使用默认版本(对于某些版本的编译器插件,它与 Java 5), 覆盖你之前设置的任何内容。
我读过
我不明白的是,为什么在我的 Maven pom.xml 中进行了一些依赖升级后,突然间我的所有
List.of(FLIGHT1_SPEND_AGG, FLIGHT1_IMPRESSIONS_AGG)
不再编译。当我在 IntelliJ 中键入 List.
时,自动完成只会出现 class
成员。我想也许我没有导入 java.util.List
?如此明确指定它,但仍然:
我正在使用 Java 11,我看到这里有方法:https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/List.html.
为什么我好像不能用?我一定是在做傻事...
您似乎在 ide 中定义了 Java 版本,但没有在 pom 中定义(至少不正确)
您的 pom 需要指定 maven-compiler-plugin 以及源和目标 java 版本。
该定义应类似于以下定义:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>11</source>
<target>11</target>
</configuration>
</plugin>
从 maven 更新后,您的 IDE 正在使用您的 pom 中定义的 Java 版本或使用默认版本(对于某些版本的编译器插件,它与 Java 5), 覆盖你之前设置的任何内容。