我用它构建项目时偶尔会收到此错误
>mvn --version
Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 15:51:28+0200)
Maven home: ...\apache-maven-3.0.5
Java version: 1.6.0_45, vendor: Sun Microsystems Inc.
Java home: ...
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"
和错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:2.5:resources
(default-resources) on project project-name: Cannot create resource output directory:
path\to\project\code\project-name\target\classes -> [Help 1]
注意:有时会发生这种情况,并且与代码无关。它可能发生在两个连续构建中的一个 - 一个接一个,完全相同的源代码。
有没有人知道如何完全避免它?它往往会打断相当耗时的构建: - /
在Windows上,无法创建文件夹的原因是:
在Windows上,网络共享是出了名的不可靠。不要将它们用于任何自动化任务。始终使用驻留在本地硬盘上的所有文件构建项目。
如果您同时使用Maven和Eclipse进行构建,则应将它们配置为使用不同的目标文件夹。见https://stackoverflow.com/a/54366009/34088
你的POM应该是这样的:
<project>
...
<build>
<outputDirectory>${basedir}/${target.dir}/classes</outputDirectory>
<testOutputDirectory>${basedir}/${target.dir}/test-classes</testOutputDirectory>
</build>
<properties>
<target.dir>target</target.dir>
</properties>
<profiles>
<profile>
<id>eclipse-folders</id>
<properties>
<target.dir>target-eclipse</target.dir>
</properties>
</profile>
</profiles>
...
剩下的就是在IDE中启用配置文件eclipse-folders
。
禁用IDE的自动构建(Eclipse或IntelliJ IDEA或其他)。它将与Maven构建冲突。
每当我在Windows资源管理器中打开输出文件夹或父文件夹时运行该命令,我都会遇到此问题。
如果我在父级之上移动一级,则构建成功结束。
对我来说,这个的原因只是在建立时使用我的git bash在所述文件夹中。确保您没有碰巧在任何其他程序中打开所述文件夹。
在尝试运行First Cup教程时,我遇到了完全相同的问题。
我通过简单地关闭NetBeans并以管理员身份运行它来修复它(通过右键单击)。
当我从windows coammandprompt给出mvn clean
命令时,我的问题得到了解决
在我的情况下,maven尝试创建目录的父目录是root,所以我在重新运行mvn命令之前做了一个sudo chown -R:/ path / to /目录来更改权限。
就我而言,我在7zip中打开了jar,然后打开了目标文件夹。我运行我的应用程序并收到此错误。关闭7zip后,应用程序运行正常并且构建成功。