Java mvn清理安装在新本地计算机上出现错误
这是完全出乎意料的,我最近换了一台新机器,在设置我的开发环境时,我的一项服务在运行Java mvn清理安装在新本地计算机上出现错误,java,spring,maven,mvn-repo,Java,Spring,Maven,Mvn Repo,这是完全出乎意料的,我最近换了一台新机器,在设置我的开发环境时,我的一项服务在运行mvn clean install [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Tot
mvn clean install
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 04:35 min
[INFO] Finished at: 2020-11-21T22:27:09+05:30
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.coderplus.maven.plugins:copy-rename-maven-plugin:1.0:copy (copy-file) on project my-service: Execution copy-file of
goal com.coderplus.maven.plugins:copy-rename-maven-plugin:1.0:copy failed: A required class was missing while executing com.coderplus.maven.plugins:copy-renam
e-maven-plugin:1.0:copy: org/codehaus/plexus/util/Scanner
[ERROR] -----------------------------------------------------
[ERROR] realm = plugin>com.coderplus.maven.plugins:copy-rename-maven-plugin:1.0
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
[ERROR] urls[0] = file:/C:/Users/userName/.m2/repository/com/coderplus/maven/plugins/copy-rename-maven-plugin/1.0/copy-rename-maven-plugin-1.0.jar
[ERROR] urls[1] = file:/C:/Users/userName/.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar
[ERROR] urls[2] = file:/C:/Users/userName/.m2/repository/org/apache/maven/reporting/maven-reporting-api/2.0.9/maven-reporting-api-2.0.9.jar
[ERROR] urls[3] = file:/C:/Users/userName/.m2/repository/org/apache/maven/doxia/doxia-sink-api/1.0-alpha-10/doxia-sink-api-1.0-alpha-10.jar
[ERROR] urls[4] = file:/C:/Users/userName/.m2/repository/commons-cli/commons-cli/1.0/commons-cli-1.0.jar
[ERROR] urls[5] = file:/C:/Users/userName/.m2/repository/org/codehaus/plexus/plexus-interactivity-api/1.0-alpha-4/plexus-interactivity-api-1.0-alpha-4.jar
[ERROR] urls[6] = file:/C:/Users/userName/.m2/repository/org/codehaus/plexus/plexus-utils/1.5.8/plexus-utils-1.5.8.jar
[ERROR] urls[7] = file:/C:/Users/userName/.m2/repository/org/sonatype/plexus/plexus-build-api/0.0.7/plexus-build-api-0.0.7.jar
[ERROR] Number of foreign imports: 1
[ERROR] import: Entry[import from realm ClassRealm[maven.api, parent: null]]
[ERROR]
[ERROR] -----------------------------------------------------
[ERROR] : org.codehaus.plexus.util.Scanner
我的第一个猜测是,我的项目中缺少一个依赖项(不确定是哪一个),尽管它确实在现有的机器(包括Jenkins实例)上构建了成功
我运行的其他服务都没有这样的问题
我已经证实了上面提到的罐子没有损坏。尝试删除整个.m2
目录并重新启动
还有什么我可能错过的机会吗
编辑:添加mypom.xml的
部分
有人建议我使用更新的插件,但这可能有助于进一步缩小问题范围:
<plugins>
<!-- Docker Build Plugin START -->
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.7</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.shared</groupId>
<artifactId>maven-filtering</artifactId>
<version>1.3</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>com.coderplus.maven.plugins</groupId>
<artifactId>copy-rename-maven-plugin</artifactId>
<version>1.0</version>
</plugin>
<!-- Docker Build Plugin END -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration><addResources>true</addResources></configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>3.0.0</version>
</plugin>
</plugins>
maven资源插件
2.7
org.apache.maven.shared
马文滤波
1.3
com.coderplus.maven.plugins
复制重命名maven插件
1
org.springframework.boot
springbootmaven插件
真的
org.codehaus.mojo
构建助手maven插件
3.0.0
我已经从这些文件中删除了
部分以保存一些滚动。您可以使用更新得多的:
使用此插件可以使用Maven Vang在存储库之间查看和传输资源
其目标是:
将工件从一个货车存储库复制到另一个货车存储库
而不是旧的复制重命名maven插件
不要被货车仓库弄糊涂了。只有源
/目标
URL和fromDir
/toDir
目录
回复:您对您的问题的一个评论:在POM中:
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-utils</artifactId>
<version>3.0.15</version>
</dependency>
org.codehaus.plexus
尾丛
3.0.15
当然,没有复制重命名maven插件。org/codehaus/plexus/util/Scanner
是其中的一部分。您的...m2/repository/org/codehaus/plexus/plexus-utils/1.5.8/plexus-utils-1.5.8.jar中是否有Scanner.class
?注:v1.5.8版本自2009年2月9日起(!)。最新的是。你的Maven版本是什么?我正在使用Maven 3.6.3(最新版本)。我知道plexus utils jar很旧,但服务也很旧。它确实有Scanner.class给定的插件非常旧,无法与Maven 3正确运行。因为它(看起来)是为Maven 2实现的。所以根本没有机会使用它。除此之外,为什么要使用这样的插件?用例是什么?@khmarbaise我排除了这种可能性,因为运行此服务的许多其他人正在使用最新的maven版本。我只是尝试降级到maven 3.5.4(与我每天运行的jenkins build作业配置相同)。maven资源插件并没有依赖性。给定的插件配置在您的构建中的某个地方或您可能正在使用的某个父级中。。。除此之外,您应该正确地将Dockerfile移动到项目的根目录中,因为它应该位于那里…这将非常容易地解决问题。。。此外,降级Maven不会改变任何事情。。。仅在pom文件中定义具有相应版本的插件…谢谢@Gerold!我正在考虑这个。同时,我还在问题中添加了
部分。@PrashantVishwakarma不客气!您在Q中的一条评论中写道:“pom中没有直接提到该插件”,但现在您的pom摘录中有com.coderplus.maven.pluginscopy-rename-maven-plugin1.0
。用旅行车插件替换它。