【问题标题】:How to edit the directory structure in Maven?如何在 Maven 中编辑目录结构?
【发布时间】:2013-03-11 08:22:58
【问题描述】:

我正在使用Maven项目,当我创建jar打包的Maven模块时,maven自动生成目录结构为src/main/javasrc/main/resourcessrc/test/javasrc/test/resources。我可以根据自己的意愿编辑上述名称吗?我可以将新文件夹添加到同一个父级吗?另外,当我用谷歌搜索时,我开始了解 abt super POM,任何人都可以建议如何使用自定义目录结构进行编辑。我已经从链接http://m2eclipse.sonatype.org/sites/m2e 为我的 Eclipse 配置了 sonatype maven@

【问题讨论】:

  • 没有答案,但问题是您为什么要首先更改默认布局。如果可能的话,不要更改默认结构 - 它让生活变得如此轻松:-)
  • 我的项目由许多包组成,所以考虑将它们分成不同的文件夹,并具有各自的名称。我也不想添加新模块。
  • 拥有不同的包意味着多个模块(多模块构建),这违反了 Maven 方式。如前所述,默认结构使生活更轻松。

标签: maven


【解决方案1】:

假设您有充分的理由这样做,您可以重命名文件夹并通过在项目的pom.xml 中指定适当的属性/部分来指示 maven 编辑的文件夹是什么。我想 m2e 会在对 pom 进行更改后获取这些更改。

您案例中的相关部分将是(来自superpom

    <sourceDirectory>${project.basedir}/src/main/java</sourceDirectory>
    <testSourceDirectory>${project.basedir}/src/test/java</testSourceDirectory>
    <resources>
      <resource>
        <directory>${project.basedir}/src/main/resources</directory>
      </resource>
    </resources>
    <testResources>
      <testResource>
        <directory>${project.basedir}/src/test/resources</directory>
      </testResource>
    </testResources>

如果您想添加额外的源文件夹或资源(不是子文件夹),那么您可以使用build helper maven plugin。同样,不确定 m2e 会做什么。

【讨论】:

  • 感谢您的回复,请您建议我可以找到超级 pom。
  • @user1787641 上面建议的修改应该在你的项目 pom 而不是 super-pom 中完成。保持原样。
  • 至于superpom在哪里,参考this SO discussion
  • 这些行属于您项目自己的pom.xml&lt;build&gt; 部分。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-31
  • 1970-01-01
  • 2012-01-26
  • 2016-08-31
  • 2015-05-21
  • 1970-01-01
相关资源
最近更新 更多