Maven资源插件执行失败:无法创建/app/target/classes输出目录
问题描述
执行org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources目标时失败,错误信息如下:
org.apache.maven.lifecycle.LifecycleExecutionException: 在项目上执行org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources(default-resources)目标失败:无法创建资源输出目录:/app/target/classes
异常追踪信息:
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:306) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:211) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:165) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:157) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:121) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:127) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293) at org.apache.maven.cli.MavenCli.main (MavenCli.java:196) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77) at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:568) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
已尝试更换Java和Spring版本,但问题未解决。
解决方案
检查目录权限
确认运行Maven的用户对/app目录拥有读写权限。可以手动尝试创建/app/target/classes目录,若失败则通过chown修改目录所属用户,或用chmod调整权限(如chmod -R 755 /app)。验证pom.xml中的输出路径配置
检查项目pom.xml是否自定义了输出目录,确保路径正确无拼写错误。例如:<build> <outputDirectory>/app/target/classes</outputDirectory> </build>若路径有误,修正为相对路径(如
target/classes)或正确的绝对路径。清理Maven缓存并重新构建
执行mvn clean install -U命令,强制清理本地缓存并重新下载依赖,同时清理旧的target目录后重新构建。检查磁盘空间
使用df -h命令查看/app所在磁盘的剩余空间,若磁盘已满需清理空间后再尝试构建。排查目录占用情况
确认是否有其他进程(如IDE、容器服务)占用了/app/target目录,关闭相关进程后重新执行构建命令。
内容的提问来源于stack exchange,提问作者Gyan Prakash

