当我在IntelliJ塞拉利昂上使用Oracle10.0.1从Maven原型maven-archetype-quickstart 1.3创建一个新的macOS 2018.1项目时,在执行Maven install时会出现此错误。
错误未能在项目org.apache.maven.plugins:maven-surefire-plugin:2.20.1:test上执行目标org.apache.maven.plugins:maven-surefire-plugin:2.20.1:test (默认测试):执行默认测试-目标的测试失败。:NullPointerException ->帮助1
在创建新项目之后,我将直接运行这个项目。我没有写代码。我可以运行默认行:
public static void main( String[] args ) { System.out.println( "Hello World!" ); }…通过从代码编辑器中单击的上下文菜单中选择Run 'App.main()'。这是可行的,但是Maven install失败了。
在clean的Maven窗格中执行IntelliJ和install并不能解决问题。

如果我将IntelliJ File > Project Structure > Project > Project SDK >从10.0.1切换到1.8.0_171 (并将Project language level设置为8 - Lambdas, type annotations etc.),那么Maven install就成功了。
信息 信息建设成功 信息
如果我将该设置返回到Java 10,则Maven install再次失败,同时也会出现同样的错误。
我运行的是外部Maven 3.5.3,而不是IntelliJ捆绑的旧版本,没有特殊原因。
我现有的基于Java 8的旧项目没有问题。我唯一的问题是尝试使用Java 10创建新的基于Maven的quickstart项目。
发布于 2018-05-04 07:55:39
maven-surefire-plugin的后期版本
似乎Java 10的原型还没有更新。
根据这篇博文:http://joshlong.com/jl/blogPost/java-10.html,你可以做以下工作来使它启动和运行.
……不过,我想使用Java10,所以我打开了pom.xml文件并将java.version属性值更改为10。我重写了这个版本,重新定义了插件版本的属性: 2.21.0。
这里的重要部分是,我认为更新到更高版本的保险,如评论中提到的。2018-10年,当前版本是2.22.1。
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.1</version>
</plugin>发布于 2018-07-20 20:50:26
答: Maarten是正确和关键的。
将编译器源/目标设置为10
除了该答案的解决方案更新版本maven-surefire-plugin之外,要运行基于Java10的Maven "Quickstart“原型项目,您还需要将POM文件更改为,表明编译器将使用Java10。
改变这一点:
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</properties>将1.7事件对替换为10
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>10</maven.compiler.source>
<maven.compiler.target>10</maven.compiler.target>
</properties>https://stackoverflow.com/questions/50164063
复制相似问题