【发布时间】:2019-09-26 17:39:17
【问题描述】:
我最近一直在学习多模块项目,我几乎将我所有的 java 项目重构为包含多个小模块的项目。当它全部是 java 时一切都很好,但我现在正在做一个项目,我有一个 React 应用程序、一些 python 代码以及 java。
所以我有一个父模块,并且我将我的 java 代码分成了一些模块,但是我应该如何处理 java 脚本和 python 呢?我将java脚本放在它自己的模块中,它有一个pom(不依赖任何东西),但是把这个反应代码放在它自己的模块中实际上有什么作用? Maven 处理我的 java 模块的依赖项,但是这里的依赖项以不同的方式处理,所以我不能将任何依赖项管理放入 react 模块 pom.xml 中。 python模块也是一样。
- 为什么我什至应该将除 java 之外的任何东西分离到它自己的模块中?我一直在使用模块,主要是为了优化第三方库的依赖管理。为 react 代码和 python 代码创建模块有什么好处吗?
【问题讨论】:
-
您可以安全地删除所有提及 Intellij 的内容。您的问题是 Maven 问题,您使用 IntelliJ 的事实不会改变答案。
-
@DavidS 感谢您的评论。真的不知道为什么我提到了 inteliJ。希望您可以对模块或其他东西进行一些 intelij 配置。
-
多模块思想仅适用于基于 java maven/gradle 的项目。您可以将其他项目放在 java 项目的子目录中,但 reactjs 和 python 项目不是基于 pom 的。
-
@MithunS 那么将它们放在模块中而不是普通目录文件夹有什么意义吗?我可以在 intelij 中看到,在创建新模块时,您可以选择将该模块设置为 python 模块或 react 模块,但这有什么意义呢?
-
Emperor 您可能会发现 this blog post 很有帮助。它并不能完全回答您的问题,但它应该让您有所思考。
标签: java maven multi-module