问题标签 [multi-module]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
15039 浏览

maven - Maven多模块:将常见依赖项聚合在一个模块中?

我已经搜索过这样的问题,但没有找到任何东西,所以我开始了。

我有一个多模块 Maven 项目。多个模块都继承同一个父级,其中定义了公共依赖项。其中,有一个我自己的模块,一个“通用”模块,其中实现了一些通用功能。

我的问题是:对于常见的依赖项,更好的做法是什么:像我目前所做的那样,在父项中明确定义它们?或者在其他模块引用的“通用”模块中定义它们,然后依赖传递性(如通用依赖项的单入口点)?

0 投票
3 回答
3891 浏览

java - 关于依赖共享的 Maven 多模块项目组合

有几个类似的问题,但没有这样的。您如何处理这种情况(典型场景):

一个由 8-11 个子项目组成的项目,有一个父工件/项目和一个主要使用/声明其他项目作为模块的主项目。

问题是所有项目都“严格”共享公共依赖项,例如testng, logging, apache commons and stuff. 但总是像其中 3 个使用 50-60% 的相同特定依赖项(apache-chemistry、jackrabbit、abdera 等),另外 2-3 个也使用 50-60% 相同但不同的依赖项。主要的使用了很多相同的部门。

我不能将那些“非严格”共享的部门放入父项目中以供其他人继承。所以只有共同的部门被继承。并且有大量重复的依赖项。而且我只能通过<dependencyManagement>.

另一种选择是让父 pom 包含大部分依赖项,但子项目甚至继承他们不需要的那些。

我可以有超过 1 个父项目,但感觉不对。从父项目继承也可能是一场噩梦,因为如果您没有正确记录/注释父 pom 定义,您不知道项目需要哪些依赖项。

另一种方法是创建仅用作依赖容器的 pom 工件——它们声明特定的依赖组,因此模块只需声明这些依赖即可获得传递依赖。但是,嘿,你想部署并提交某种

OneDepArtifact 声明jackrabit, abdera, chemistry

另一个DepArtifact 声明htmlcleaner, google-api, tika

ThirdDepArtifact 声明spring, httpclient, selenium

这是一个巨大的混乱,我不确定我<dependencyManagement>是否正确使用,它似乎只对管理依赖版本有用。

我正在考虑使我的应用程序开发适应“maven 多模块设计”。但是,如果您想在一个模块中创建仅使用各种库的 spring 服务/bean,则不要在不同的模块中实现它们,因为它们使用其他模块也使用的库:-)

0 投票
1 回答
1334 浏览

eclipse - maven eclipse:eclipse 目标生成错误的.c​​lasspath

我有一个带有两个子模块 A 和 B 的 maven 父项目 P。A 和 B 都在 P 文件夹内。P 在pom.xml中有一个 modules 部分,类似于:

A 具有(和 B 相同,但工件除外):

现在我通过添加到 A 的pom.xml使 A 依赖于 B :

如果我mvn install在 P 上做一个,那么一切都很好。但是mvn eclipse:eclipse在 P 上运行后,A 中生成的.classpath文件不正确,Eclipse 无法解析来自 B 的依赖。

生成的.classpath包括:

而不是工作

有什么问题?谢谢你。

0 投票
5 回答
4897 浏览

java - 在小型应用程序中工作时使用 Maven Multimodule 有什么好处吗?

我们正在使用不同的架构层(例如域、接口、基础设施和应用程序)构建一个小型应用程序。这遵循洋葱 DDD 模型。现在我想知道将应用程序拆分为多模块 Maven 项目是否有任何好处。据我现在所见,这似乎使事情变得比需要的更困难。整个应用程序将作为单个 WAR 文件部署到 Tomcat 容器中。

0 投票
1 回答
1246 浏览

java - 如果我将测试放在单独的模块中,如何在多模块 Maven 设置中运行单元测试?

我创建了一个多模块 maven 项目,我正在尝试在特定模块上编写和执行一些测试。我正在尝试将所有测试代码放入一个单独的模块中,但我想知道这是否是正确的方法,如果是,我如何设置 maven 构建/测试周期以便 mvn install 将使用这些测试?

0 投票
1 回答
987 浏览

java - 在多模块 Maven 项目中将跨不同模块使用的属性文件放在哪里?

我已经使用 maven 创建了一个不错的多模块项目,但现在我想知道存储跨模块共享的属性文件的最佳位置是什么。举个例子,我有 4 个模块都需要一个 log4j.properties 文件,我需要把它放在每个模块中还是有一个中心位置可以放置它?

0 投票
1 回答
323 浏览

google-app-engine - GWT多模块应用

我是一名 GWT 初学者,正在考虑开发一个管理软件并将其部署在 AppEngine 上。

在我看来,有一个“标签式”用户界面。

Tab1=销售额;Tab2=发票;Tab3=库存...等等。

我刚刚完成了 Stockwatcher 教程,它非常酷,但现在我想知道如何组织我的代码

我的意思是,为每个选项卡制作一个 gwt 模块是个好主意吗?例如,我只想在选择该选项卡时加载“发票”选项卡的界面。即使我关于多模块的想法是错误的,你能告诉我如何避免将我的所有代码都放在“Stockwatcher”类中。例如,我阅读了有关复合材料的信息,但我无法理解。

希望你能理解我的疑惑。谢谢你们!

0 投票
1 回答
258 浏览

maven - 如果它们不在本地工作区中,是否有任何方法可以配置 Archiva 以下载缺少的 Maven 项目模块?

我对 Archiva 如何完全运作感到困惑。我知道如果我们有一组核心依赖项,我们可以使用 Archiva 作为我们的本地 maven 存储库。

我不明白的是,Archiva 如何管理您自己项目的构建工件。

假设我有一个多模块 maven 项目——例如,我们甚至可以使用来自 Sonaytpe 的项目。http://www.sonatype.com/books/mvnex-book/reference/multimodule-sect-building-multimodule.html

如果我想让一个团队在 Simple Model 应用程序上工作,而我希望另一个团队在 Simple webapp 上工作。但我也不希望在他们的本地工作区中拥有他们没有分配到的项目。Webapp 需要 Model 来构建,但我不希望 Wepapp 团队直接访问 Model。

Maven有什么方法可以检测到模型的构建工件不在Webapp开发人员的工作区中,并从我们本地的Archiva repo中提取它,因此尽管没有模型(maven模块项目)代码,他们仍然可以构建Webapp他们的工作空间?

0 投票
1 回答
1135 浏览

maven - Maven在war中包含/组装打包的静态html项目

我有战争档案,它有自己的 xhtml。js、html、css等在它的webapp目录下。它可以很好地与 maven 打包。我必须包含另一个纯 html+js 的静态组件。怎么做?我尝试将静态项目打包成 jar 文件并添加对 war 的依赖,但它作为 jar 文件放置在 WEB-INF/lib/ 中,因此不可公开访问。我需要像其他 xhtml 和静态文件一样处于战争的根源。

0 投票
1 回答
411 浏览

maven - 来自 maven 的 CheckStyle:最后如何失败?

我有一个配置为运行 CheckStyle 的多模块 Maven 构建。它可以工作,但是一旦遇到违规的模块就会失败。如何处理所有模块但直到最后都不会失败?我希望能够查看所有违规行为,而无需反复修复/重新运行。