我有一个多模块项目,有一个父项目 A,两个子项目 B 和 C。项目 B 对项目 C 有依赖关系。我使用 maven-dependency-plugin 将 B 的依赖项复制到 lib/ 目录中目标/目录。因此,我可以使用 maven-assembly-plugin 将此 lib/ 目录包含在最终的 zip 中。问题是当我在项目 B 上运行 mvn clean package 时出现以下错误:
在 org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) ... 还有 19 个
引起:java.io.FileNotFoundException: D:\path-to-projects-directory\C\target\classes(访问被拒绝)
在 java.io.FileInputStream.open(本机方法)
在 java.io.FileInputStream.(FileInputStream.java:120)
在 org.codehaus.plexus.util.io.FileInputStreamFacade.getInputStream(FileInputStreamFacade.java:36)
在 org.codehaus.plexus.util.FileUtils.copyStreamToFile(FileUtils.java:1141)
在 org.codehaus.plexus.util.FileUtils.copyFile(FileUtils.java:1048)
在 org.apache.maven.plugin.dependency.AbstractDependencyMojo.copyFile(AbstractDependencyMojo.java:192) ... 23 更多
有人有想法吗?
我在网上做了一些研究,发现存在这样的问题(请参阅http://jira.codehaus.org/browse/MWAR-192,这是针对战争的,但我对 JAR 也有类似的问题)。似乎无法访问项目C的target/classes目录来创建C.jar(C.jar必须包含在项目B的lib/目录中)。
谢谢