关于maven打包报错问题:Failed to clean project: Failed to delete xxxxxxxxxxxx

今天在打包项目的时候,突然打包报错堆栈如下:开始以为是maven插件的问题,

[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 48.491 s
[INFO] Finished at: 2019-03-21T15:33:31+08:00
[INFO] Final Memory: 57M/495M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean (default-clean) on project yqdataservice-core-model: Failed to clean project: Failed to delete /home/admin/build/app/core/model/target/classes/META-INF/spring -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean (default-clean) on project yqdataservice-core-model: Failed to clean project: Failed to delete /home/admin/build/app/core/model/target/classes/META-INF/spring
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:216)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:120)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:355)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:155)
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:584)
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:216)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:160)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoExecutionException: Failed to clean project: Failed to delete /home/admin/build/app/core/model/target/classes/META-INF/spring
    at org.apache.maven.plugin.clean.CleanMojo.execute(CleanMojo.java:215)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:132)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
    ... 19 more
Caused by: java.io.IOException: Failed to delete /home/admin/build/app/core/model/target/classes/META-INF/spring
    at org.apache.maven.plugin.clean.Cleaner.delete(Cleaner.java:249)
    at org.apache.maven.plugin.clean.Cleaner.delete(Cleaner.java:191)
    at org.apache.maven.plugin.clean.Cleaner.delete(Cleaner.java:158)
    at org.apache.maven.plugin.clean.Cleaner.delete(Cleaner.java:158)
    at org.apache.maven.plugin.clean.Cleaner.delete(Cleaner.java:158)
    at org.apache.maven.plugin.clean.Cleaner.delete(Cleaner.java:117)
    at org.apache.maven.plugin.clean.CleanMojo.execute(CleanMojo.java:193)
    ... 21 more

原因是因为之前编译的工程还在运行,无法clean,导致maven生命周期无法继续进行。

解决办法1:直接停止服务,在启动编译。

如果以上办法不行:有可能工具里面已经停止服务了,但是后台进程里面还没关闭。

解决办法:直接kill了java服务进程。然后在启动编译

如果以上还是无法解决,检查下pom.xml文件的依赖。例如是分布式项目,有服务a,b,c,有可能出现循环依赖,就报错了。

a依赖b,b依赖c,c又依赖a。编译的时候就会被占用导致编译报错

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值