当前位置: 首页 > 面试题库 >

Maven-如何包括空目录

长孙永思
2023-03-14
问题内容

默认情况下,在构建过程中,maven会删除空目录。
您是否知道可以在pom中指定一个参数来指示maven在生成的target / test-classes文件夹中包括空目录?


问题答案:

根据票证MRESOURCES-36,应该有一个<includeEmptyDirs>元素,但仅适用于
Maven Resources Plugin 2.3

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-resources-plugin</artifactId>
  <version>2.3</version>
  <configuration>
    <includeEmptyDirs>true</includeEmptyDirs>
  </configuration>
</plugin>

对于包含旧版资源插件的Maven版本:

在此问题解决之前,这是我一直在成功使用的解决方法。
将此插件元素添加到project/build/pluginspom.xml,然后在mkdir任务中更改目录。

您可以<mkdir>为多个目录包含多个元素。mkdir如果目录已被资源插件复制,则该任务不执行任何操作。

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-antrun-plugin</artifactId>
  <executions>
    <execution>
      <id>create-empty-directory</id>
      <phase>process-classes</phase>
      <goals>
        <goal>run</goal>
      </goals>
      <configuration>
        <tasks>
          <mkdir dir="${basedir}/target/classes/empty" />
        </tasks>
      </configuration>
    </execution>
  </executions>
</plugin>

这最初来自openejb项目中的 openejb-
standalonepom.xml



 类似资料:
  • 问题内容: 我不想在Maven存储库(本地/远程)中安装几个jar。特别是我有一些jar文件位于 使用NetBeans打开/编辑时如何将它们包括到我的项目中? 问题答案: 您是否考虑过将这两个JAR添加为依赖项?例如, 请注意,不建议这样做,如果有的话,应该非常谨慎地使用它。

  • 现有结构:src/test/java-- 更新:我也尝试了构建助手插件 现在,如果我运行“测试”目标,我看到添加了C:\Developer\Code\myProj\rc\test\groovy。 但是我没有看到任何为groovy文件生成的类。 最后的答案,感谢@khmarbaise,我刚刚升级了版本,并删除了GMaven编译

  • 我是IntelliJ和Gradle的新手,我有一个Maven项目,有很多依赖项,它自己工作。现在我应该使用该项目中的库,并在Gradle中为IntelliJ创建一个插件。 我尝试了各种方法在IntelliJ模块设置中添加依赖项,这允许我使用所需的类来编写代码并构建代码。然而,当我试图启动插件时,它再也找不到类了。我想我需要在构建中详细说明这些。但我不明白到底是如何做到的,因为我尝试的所有方法都不起

  • 问题内容: 在1.6.0_16 JDK上工作时,我使用Apache CXF 2.5.2从WSDL生成了存根类,Apache CXF 2.5.2使用了最新的jaxb- api 2.2。我知道可以使用jaxb-api 2.1,但是为了避免兼容性问题,我宁愿使用当前版本。由于我的JDK具有jaxb 2.1,因此构建失败并显示以下消息: 因此,我尝试使用以下依赖项使Maven包括最新的jaxb api和i

  • 用chatgpt问了不下十次 给了各种插件的方案 不知道为啥就是不生效 下面是我的pom.xml中的部分片断