我不认为这是桌面应用程序的正式布局,但是这是我们使用我们的布局。
- 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。
- 如果您使用包含config和lib目录以及标准文件类型的共享程序集描述符jar与所有项目共享,则可获得奖励积分。要包含的一组很好的默认文件类型是带有可执行权限的.sh,.bat和.exe。 .jar,.zip,.txt,.pdf,.xml,.properties,.conf,.ico,.png,.jpg和标准权限。
- 使用maven-jar插件将配置目录和lib /前缀添加到类路径中以生成可运行jar。
- 添加一个安装程序配置文件,该配置文件使用maven-assembly插件和您的装配描述符构建应用程序的装配。如果需要,此组件可以由单独的安装程序项目使用。
- 避免在src /等级放置其他任何东西。如果你真的需要的话,把文档放在src/site /目录(例如.src/site/sphinx)或src/doc中。
- 将上述所有配置放在父/公司pom中,以便与您的所有项目共享。只需引用项目中的maven-dependency,maven-resources,maven-jar和maven-assembly插件即可构建几乎没有配置的整个应用程序(不要忘记为maven-jar插件设置主类) 。
请记住,这些资源目录通常会被maven震惊。这可能不是用户可配置属性文件或启动脚本的期望行为。 – Kevin 2009-02-08 00:40:30