maven文件结构如何工作?

Jen*_*der 1 maven-2 directory-structure filestructure

我们正计划重组一个包含许多模块/件的复杂项目,无论你想要什么.为了转向标准目录结构,我们希望采用maven文件结构.

所以最大的问题是:任何人都可以提供maven文件结构的描述,我们不必深入挖掘所有maven说话吗?

KLE*_*KLE 5

请参阅 http://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html

src/main/java      Application/Library sources
src/main/resources   Application/Library resources
src/main/filters    Resource filter files
src/main/assembly    Assembly descriptors
src/main/config      Configuration files
src/main/webapp      Web application sources
src/test/java      Test sources
src/test/resources   Test resources
src/test/filters     Test resource filter files
src/site            Site
LICENSE.txt          Project's license
README.txt        Project's readme
Run Code Online (Sandbox Code Playgroud)

顺便说一句,我们在现有项目上进行了迁移.让一切按预期工作是一项非常漫长而艰巨的任务,但我们终于完成并对此感到满意.


更新

当您有许多项目时,每个项目都有相同的结构.

现在,当您想要将它们分组时,真正的问题就开始了.我们很难阅读Maven文档和最佳实践,并决定适合我们的结构.

基本思想是将相关项目分组到一个公共目录(我们称之为模块)中,允许在不列出模块的情况下整体处理模块.但是如果你在IDE(在我们的例子中是Eclipse)中打开模块,那么项目本身就属于它,但不是作为子项目打开的(Eclipse中不存在这个概念).

我们最终得到了一个严格的层次结构,使我们摆脱了许多maven问题:

  • 实际的编码项目(java项目)总是在我们的目录树中.它们是我们在IDE中打开的唯一一个.它们是JAR或WAR类型.
  • 他们的父母/模块总是POM类型.他们没有java代码.