全部学科
Python全栈
python
NodeJS全栈
nodejs

多模块项目管理专题测试

12 题 13 分钟 难度:★★

考察知识点

  • 多模块项目结构设计与聚合
  • 父 POM 继承与依赖管理
  • 反应堆构建与顺序控制
  • 模块间依赖关系管理
  • 多模块构建优化策略
💡 参考答案在文末
判断题
1

在 Maven 多模块项目中,aggregator POM 的 packaging 类型必须是 pom。

A

B

单选题
2

在 Maven 多模块项目中,以下哪个元素用于在父 POM 中声明包含的子模块?

A
B
C
D
3

Maven 反应堆构建顺序的计算主要基于什么?

A

模块名称的字母顺序

B

模块在 POM 中声明的先后顺序

C

模块间的依赖关系拓扑排序

D

模块目录的层级深度

4

以下关于 Maven 中 dependencyManagement 和 dependencies 的区别,说法正确的是?

A

dependencyManagement 中的依赖会自动下载到子模块

B

dependencies 中的依赖不会传递到子模块

C

dependencyManagement 仅声明版本约束,子模块需显式声明依赖才能引入

D

dependencies 和 dependencyManagement 功能完全相同

5

使用 Maven -T 参数进行并行构建时,以下哪个条件是必须满足的?

A

所有模块必须使用相同的 JDK 版本

B

模块间不能有循环依赖

C

必须使用 Maven 2.x 版本

D

所有模块必须有相同的 packaging 类型

6

在父 POM 中使用 dependencyManagement 声明依赖版本,子模块需要怎样引用这些依赖?

A

子模块无需声明,自动继承父 POM 的所有依赖

B

子模块需声明依赖但不指定版本,版本从父 POM 继承

C

子模块必须完整声明 groupId、artifactId 和 version

D

子模块使用 inherit 标签继承父 POM 依赖

多选题
7

关于 Maven 多模块项目中的模块间依赖管理,以下说法正确的有?

A

模块间不应出现循环依赖

B

可以通过 groupId 和 artifactId 引用同项目的其他模块

C

模块间依赖版本必须手动指定,不能使用父 POM 管理的版本

D

Maven 反应堆会自动计算模块构建顺序以满足依赖关系

8

在 Maven 多模块项目中,子模块可以从父 POM 继承以下哪些元素?

A

dependencies

B

dependencyManagement

C

pluginManagement

D

properties

E

modules

9

在 Maven 多模块项目中,如果模块 A 依赖模块 B,模块 B 又依赖模块 A,会产生什么问题?应该如何解决?

A

Maven 会自动检测并阻止循环依赖

B

构建时报告循环依赖错误,无法完成构建

C

可以通过提取公共代码到第三个模块来解决

D

可以使用 provided 范围打破循环依赖链

E

Maven 会按照声明顺序忽略其中一个依赖

填空题
10

在 Maven 多模块项目中,若只想构建 module-a 模块及其所有依赖的模块,应使用命令 mvn install ____________;若只想构建 module-a 模块及其依赖的其他模块,应使用命令 mvn install ____________

11

Maven 使用 ____________ 参数启用并行构建,其中 ____________ 表示使用 4 个线程构建,而 ____________ 表示使用 CPU 核心数的 2 倍线程数构建。

简答题
12

在 Maven 多模块项目中,如果出现模块间循环依赖,应如何处理?请列举至少两种解决策略。

参考答案
1.正确 2.B 3.C 4.C 5.B 6.B 7.A;B;D 8.A;B;C;D 9.A;B;C 10.-pl module-a -am;-pl module-a -amd 11.-T;-T 4;-T 2C 12.
想在手机上练习这套试卷?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码
← 上一套试卷 依赖高级特性专题测试
下一套试卷 → 安全与依赖治理专题测试
扫码体验小程序
加载中
想在手机上刷题学习?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码