我有一个应用程序,其中所有代码都非常有凝聚力,但在不同的类环境中运行。应用程序使用不同的 API 以多种方式执行相同的操作。
因此,我希望构建的不同部分使用不同的类路径运行。使用的优点/缺点是什么
- maven 子模块
相对
- Maven 配置文件
要做到这一点?
在构建中,我需要将所有代码路径的结果集成到最终测试中 - 所以我不能将此项目分成完全独立的源代码库。
我有一个应用程序,其中所有代码都非常有凝聚力,但在不同的类环境中运行。应用程序使用不同的 API 以多种方式执行相同的操作。
因此,我希望构建的不同部分使用不同的类路径运行。使用的优点/缺点是什么
相对
要做到这一点?
在构建中,我需要将所有代码路径的结果集成到最终测试中 - 所以我不能将此项目分成完全独立的源代码库。
据我了解,您的应用程序有一些通用代码和一些不同的 api。分离代码的独立部分(如 apis)的一种方法是创建一个公共项目(子模块)和一些 api 项目(其他子模块),它们仅依赖于公共项目。
如果您需要为最终测试集成所有 api,您可以创建另一个项目,该项目将依赖于所有其他项目(包括 api),并且在构建此项目时,将创建一个单一的工件,即企业存档 (EAR)其中包含依赖项目。这可以通过 maven ear 插件http://maven.apache.org/plugins/maven-ear-plugin来实现。