我决定让spring boot hello word示例与Java 1.8一起使用,但存在一个恼人的依赖性问题。在回答部分,我将解释是什么解决了我的问题,以及如何使您的机器上的所有内容更新的一些提示。我得到的错误是:
[ERROR] realm = plugin>org.apache.maven.plugins:maven-compiler-plugin:3.x
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
[ERROR] urls[0] = file:/Users/xxx/.m2/repository/org/apache/maven/plugins/maven-compiler-plugin/3.1/maven-compiler-plugin-3.1.jar
[ERROR] urls[1] = file:/Users/xxx/.m2/repository/org/codehaus/plexus/plexus-utils/1.5.1/plexus-utils-1.5.1.jar
[ERROR] urls[2] = file:/Users/xxx/repository/org/apache/maven/shared/maven-shared-utils/0.1/maven-shared-utils-0.1.jar
[ERROR] urls[3] = file:/Users/xxx/repository/com/google/code/findbugs/jsr305/2.0.1/jsr305-2.0.1.jar
[ERROR] urls[4] = file:/Users/xxx/.m2/repository/org/apache/maven/shared/maven-shared-incremental/1.1/maven-shared-incremental-1.1.jar
[ERROR] urls[5] = file:/Users/xxx/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar
[ERROR] urls[6] = file:/Users/xxx/.m2/repository/org/codehaus/plexus/plexus-compiler-api/2.2/plexus-compiler-api-2.2.jar
[ERROR] urls[7] = file:/Users/xxx/.m2/repository/org/codehaus/plexus/plexus-compiler-manager/2.2/plexus-compiler-manager-2.2.jar
[ERROR] urls[8] = file:/Users/xxx/.m2/repository/org/codehaus/plexus/plexus-compiler-javac/2.2/plexus-compiler-javac-2.2.jar
[ERROR] urls[9] = file:/Users/xxx/.m2/repository/org/apache/xbean/xbean-reflect/3.4/xbean-reflect-3.4.jar
[ERROR] urls[10] = file:/Users/xxx/.m2/repository/log4j/log4j/1.2.12/log4j-1.2.12.jar
[ERROR] urls[11] = file:/Users/xxx/.m2/repository/commons-logging/commons-logging-api/1.1/commons-logging-api-1.1.jar
[ERROR] urls[12] = file:/Users/xxx/.m2/repository/com/google/collections/google-collections/1.0/google-collections-1.0.jar
[ERROR] urls[13] = file:/Users/xxx/.m2/repository/junit/junit/3.8.2/junit-3.8.2.jar
许多线程建议删除像这里这样的~/. m2/存储库,但这并没有解决我的问题。
还有一些人说这是因为Java1.8,它在Java1.7中非常适合他们!但我无法相信他们,因为这毫无意义。我真的很想让这个简单的例子使用Java8。
这是一个依赖冲突,但与Java版本或下的存储库无关。m2文件夹给我。
错误源是由插件引起的依赖冲突
关于stackoverflow的其他问题类似,但没有解决我在spring boot上的问题,如下所示:
1-maven-build-error-failed-to-execute-goal-missing-a-class
2-failed-to-execute-goal-org-apache-maven-pluginsmaven-compiler-plugin2-3-2comp
3-maven发布插件问题无法执行目标组织apache maven pluginsmav
4-maven-原型-问题
正如我提到的,错误的来源是由插件引起的依赖冲突
然而,在我的情况下(检查规格),仅指定maven编译器插件,并通过以下代码解决了我的问题:
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
Java 1.8_45
基本上,我必须在pom中指定maven编译器插件。xml(见下文)。
<?xml version="1.0" encoding="UTF-8"?>
<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>
<groupId>com.mycompany</groupId>
<artifactId>helloworld</artifactId>
<version>0.1.0</version>
<!-- Inherit defaults from Spring Boot -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.2.2.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
import org.springframework.boot.*;
import org.springframework.boot.autoconfigure.*;
import org.springframework.web.bind.annotation.*;
@RestController
@EnableAutoConfiguration
public class SampleController {
@RequestMapping("/")
String home() {
return "Hello World!";
}
public static void main(String[] args) throws Exception {
SpringApplication.run(SampleController.class, args);
}
}
只需遵循maven的标准结构。
提示如果这解决了您的问题,或者您面临其他问题,请随时在评论中给我反馈。
当我运行intellij idea maven安装时,它遇到了如下问题 无法执行目标组织。阿帕奇。专家插件:maven编译器插件:3.8.1:testCompile 如何解决?
我知道这是一个重复的问题,但其他话题的答案对我没有帮助。 我使用的是Eclipse光子,Java版本:10,我在Eclipse和pom中将jdk/jre版本设置为10。xml文件。我已经改变了。ini文件: -dosgi.requiredJavaVersion=10(设置为1.8) 我还在我的pom中添加了插件。xml: 没有任何帮助。这是我的pom。xml: 这些依赖项没有在类文件中读取,我也尝
我目前正在制作一个Spigot插件,为了构建这个插件,我使用了生命周期包构建。我正在制作的Spigot插件实际上是一个API,所以很自然地我想包含JavaDocs。问题是,我已经制作了JavaDocs,我知道只是觉得我需要将maven-javadoc-plugin放在我的构建和报告中。但是,每当我重新加载maven更改时,我在构建时都会收到错误,说*Plugin。这很不幸,因为我已经在这个插件上查
什么控制台打印,我试图运行一个java web应用程序在netbean和我不太明白为什么它给我的错误。 无法执行目标组织。阿帕奇。专家插件:maven war插件:2.3:primera_项目web上的war(默认war):目标组织的执行默认war。阿帕奇。专家插件:maven war插件:2.3:war失败:无法在插件“org”中加载mojo“war”。阿帕奇。专家插件:maven war插件:
我试图在Eclipse Neon上运行Maven安装命令,但一直出现以下错误: [ERROR]无法解析org.apache.maven.plugins的插件描述符:maven-set-plugin: 2.4(C:\用户\Anna. m2\repository\org\apache\maven\plugins\maven-set-plugin\2.4\maven-install-plugin-2.4
在Ubuntu服务器18.04上,我创建了一个框架Maven项目,如下所示,我只是想编译它。 运行mvn编译可以。但运行mvn测试失败,出现错误 [错误]无法执行目标组织。阿帕奇。专家插件:maven surefire插件:2.20.1:project my app上的测试(默认测试):目标组织的执行默认测试。阿帕奇。专家插件:maven surefire插件:2.20.1:测试失败:NullPo