我是否必须使用Maven模块,或者普通项目是否足够?

时间:2014-01-08 00:00:15

标签: java eclipse maven dependencies project

我正在开发一个应用程序,它将拥有一组核心类,一组较小的工具程序,它们将使用/共享/依赖这些核心类来生成数据(例如游戏和项目的各种编辑器,等级,模型),我还有一个用于启动应用程序的启动器(或几个)。

工具和启动器都依赖于核心类(级别编辑器(工具)和游戏(启动器)必须知道级别是什么(核心类的一部分))。

我可以为此使用三个Maven项目吗?一个用于核心类,一个用于启动器,一个用于工具?然后添加依赖项?

之前我认为我必须创建一个涉及父项目和模块的更精细的结构,但这是否真的有必要/传统?

1 个答案:

答案 0 :(得分:0)

两种方式都很方便。您可以从以下几点开始思考:

  1. 您的课程中是否有一部分不应该暴露给某人?例如,服务器类只在您的服务器上运行,并且您希望将它们保存在单独的jar文件中而不是共享给公众 - 因为您想要分离模块;
  2. 你的系统会有大量的课程吗?分离到模块也会分离问题,你可能会有很多测试用例,分离到模块将帮助你比一个大模块的所有测试更快地从一个小模块运行特定测试集;
  3. 您打算将某些课程暴露给其他应用程序吗?将这些类提取到单独的模块不会暴露应用程序的其他部分;
  4. 如果之前的分数没有投票分离 - 你可能应该从一个模块开始,这很简单,我看到许多使用单模块方法的项目,你可以随时切换到多模块。
  5. PS。 如果您选择了多模块实现,请不要创建许多高粒度模块。