首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java Webapp模块

Java Webapp模块
EN

Stack Overflow用户
提问于 2018-03-22 12:05:41
回答 1查看 411关注 0票数 2

我有一个核心的webapp,并希望通过几个可选模块(jar文件)来扩展它。这些模块可以包含Servlets、过滤器等。

发展:

由于这些模块是可选的,所以我认为使用带有父模块的maven模块并不可行,因为父模块总是包含所有模块,而且我不希望在每个部署场景中都有一个父模块。

所以每个可选的webapp模块都有一个正常的maven项目..。但是如何管理核心和模块总是使用相同的依赖关系呢?我是否必须为两者创建一个父pom,其中包含所有依赖项和其他共享设置(Java版本等)?

部署:

这里的推荐是什么?总是重新包装战争?将模块jar复制到已爆炸的WEB/lib中?它也能在运行时部署吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-22 12:42:31

听起来,您似乎希望单独配置和构建所有可能的配置,而不是使用或制作一些真正动态的模块加载系统。

在这种情况下,最简单的方法是让每个配置都有一个war项目:

您应该有一个模块pom-project,它只会构建所有其他项目。这可能是父项目,但我会使用单独的项目。编辑:我会把这个项目放在你的存储库的根部,并把所有其他的项目放在子文件夹中。这与IDE和发布工具非常匹配。

您应该有一个-project,它执行Maven <dependencyManagement>来管理所有项目中的所有依赖版本,并且具有所有其他项目所需的任何通用构建配置。除模块项目外,所有其他项目都有此父项目。

对于许多模块中使用的通用代码,您可能需要一个通用的jar-project。

您的核心应用程序应该有一个jar-project。

每个模块都应该有一个jar-project。

对于每个配置,您都需要一个war-project,它只不过是一个pom文件,声明了所需的依赖项,并且可能需要一些属性文件。他们会生产你的产品。

如果您想为war项目(部署、测试等)进行特殊的配置。你可以为他们做一个中介父母。它应该有一般的父母作为父母。

现在,您可以使用模块项目构建所有内容,并为每个配置生成一个war文件。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49428274

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档