我放置额外配置文件的主文件夹位于src / main / java / resources下。通常我在那里创建子目录。测试可以有自己的配置文件src / test / resources。
您可以在pom.xml的build部分中使用指令来指定其他资源目录以及将文件复制到目标目录中特定位置的位置。通常会出现您尝试使用的语言或框架的约定。在这种情况下,混乱可以隐藏在父pom.xml
中
请参阅http://maven.apache.org/pom.html#Resources
我不认为桌面应用程序有官方布局,但这是我们用于我们的布局。
- src / main / config - 配置文件,复制并过滤到$ {project.build.directory} / config。
- src / main / scripts - sh,bat,README和其他复制并过滤到$ {project.build.directory}的纯文本文件。
- src / main / bin - 不过滤并复制到$ {project.build.directory}的二进制文件。
- src / main / build - 构建过程使用但未包含在应用程序中的任何其他脚本,ant文件或资源。
- src / main / assembly - 用于创建应用程序集的程序集描述符。
- 使用maven-dependency插件将依赖项复制到$ {project.build.directory} / lib。
- 如果您使用共享程序集描述符jar,其中包含config和lib目录以及标准文件类型,则可以与所有项目共享。要包含的一组好的默认文件类型是具有可执行权限的.sh,.bat和.exe;具有标准权限的.jar,.zip,.txt,.pdf,.xml,.properties,.conf,.ico,.png,.jpg。
- 使用maven-jar插件将config目录和lib /前缀添加到类路径中,以创建一个可运行的jar。
- 添加一个安装程序配置文件,使用maven-assembly插件和程序集描述符构建应用程序的程序集。如果需要,可以由单独的安装程序项目使用此程序集。
- 避免在src /级别放置任何其他内容。而是将文档放在src / site /目录(例如src / site / sphinx)或src / doc中,如果你真的需要的话。
- 将上述所有配置放在父/公司pom中,与您的所有项目共享。只需在项目中引用maven-dependency,maven-resources,maven-jar和maven-assembly插件来构建几乎没有配置的整个应用程序(不要忘记为maven-jar插件设置main-class)