"static interface method invocations are not supported in -source 7" 尽管使用 1.8
"static interface method invocations are not supported in -source 7" despite using 1.8
这是完整的错误信息:
"-source 7 不支持静态接口方法调用
(使用 -source 8 或更高版本启用静态接口方法调用)"
这里是 class:
public class UserVerticle extends AbstractVerticle {
@Override
public void start() {
Router router=Router.router(vertx);//IDE shows error message here
}
@Override
public void stop() {
}
}
以下是项目属性:
这些是我的依赖项:
<groupId>io.vertx</groupId>
<artifactId>vertx-core</artifactId>
<version>4.0.0</version>
并且:
<groupId>io.vertx</groupId>
<artifactId>vertx-web</artifactId>
<version>3.4.1</version>
编辑:
我在 pom.xml 中将 javaee-web-api 版本更改为 8(它是 7),使用依赖项构建,但仍然出现相同的错误。
编辑2:
我在 pom.xml 中将 vertx-web 版本更改为 4.0.0,使用依赖项构建,但仍然出现相同的错误。
原来我应该在 maven-compiler-plugin 中选择 source 8,这完全解决了问题:
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<compilerArguments>
<endorseddirs>${endorsed.dir}</endorseddirs>
</compilerArguments>
</configuration>
这是完整的错误信息:
"-source 7 不支持静态接口方法调用 (使用 -source 8 或更高版本启用静态接口方法调用)"
这里是 class:
public class UserVerticle extends AbstractVerticle {
@Override
public void start() {
Router router=Router.router(vertx);//IDE shows error message here
}
@Override
public void stop() {
}
}
以下是项目属性:
这些是我的依赖项:
<groupId>io.vertx</groupId>
<artifactId>vertx-core</artifactId>
<version>4.0.0</version>
并且:
<groupId>io.vertx</groupId>
<artifactId>vertx-web</artifactId>
<version>3.4.1</version>
编辑:
我在 pom.xml 中将 javaee-web-api 版本更改为 8(它是 7),使用依赖项构建,但仍然出现相同的错误。
编辑2:
我在 pom.xml 中将 vertx-web 版本更改为 4.0.0,使用依赖项构建,但仍然出现相同的错误。
原来我应该在 maven-compiler-plugin 中选择 source 8,这完全解决了问题:
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<compilerArguments>
<endorseddirs>${endorsed.dir}</endorseddirs>
</compilerArguments>
</configuration>