Maven:为不同的包分开资源?

时间:2016-09-12 15:29:27

标签: java maven

我想将Java项目转换为Maven。 Project有两个包,其中一个包负责程序逻辑,另一个包负责GUI。它们都有自己的资源文件。

所以问题是将这些资源放在maven项目中是一种合理的做法:

  • 为两个包指定公共资源文件夹(例如'src / main / resources');

  • 为每个包指定单独的资源文件夹。如果这种方式更可取,那么名称应该是什么路径:

    • 'src / main / resources / res_for_pack1','src / main / resources / res_for_pack2';

    • 'src / main / res_for_pack1','src / main / res_for_pack2';

    • 其他

Maven provides指定多个资源文件夹的可能性,但不解释为此执行此操作的原因。

在我的情况下,资源文件名不会相互冲突。

2 个答案:

答案 0 :(得分:1)

对于大型或企业项目,在不同的maven模块中分离程序逻辑(或服务)和GUI是有意义的,因为它们往往会增长。通过这种方法,一个模块内的组件可以高度耦合,并且模块之间的耦合很低。资源文件夹将在每个模块中,这里是maven结构:

your-project-service
- src
-- main
--- java // program logic sources
--- resources // program logic resources
your-project-web
- src
-- main
--- java // GUI sources
--- resources // GUI resources

如果您的项目不够大,您可以选择更简单的方法来使用一个模块和不同的域逻辑和GUI源和资源包:

your-project
- src
-- main
--- java
---- com.project.service // package for logic sources
---- com.project.web // package for GUI sources
--- resources
---- com.project.service // package for logic resources
---- com.project.web // package for GUI resources

答案 1 :(得分:0)

通常使用的模式如下: src/main/java/{com,org,..}/project_name/package name 只需将您的源文件移动到新创建的maven项目的新目录中,就会有很多依赖项和其他您需要手动打扰的文件。