如何在Maven依赖中使用JUnit 5.2 BOM?
使用JUnit 5.2 BOM简化Maven依赖管理
嘿,JUnit 5.2版本刚推出的这个BOM(物料清单POM)真的是个省心的好东西!它专门用来解决Maven项目里JUnit依赖版本混乱的问题,坐标是org.junit:junit-bom:5.2.0,用起来超简单。
第一步:在你的POM里导入BOM
你只需要把这段配置加到pom.xml的<dependencyManagement>节点中——这个节点就是用来统一管理依赖版本的核心区域:
<dependencyManagement> <dependencies> <dependency> <groupId>org.junit</groupId> <artifactId>junit-bom</artifactId> <version>5.2.0</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
第二步:添加具体JUnit依赖(不用写版本号!)
导入BOM之后,你再添加JUnit相关的具体依赖时,完全不用再指定<version>标签了,BOM会自动给所有JUnit家族的依赖统一用5.2.0版本,完美避免版本不一致的坑。比如:
<dependencies> <!-- 编写测试用的JUnit Jupiter API --> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-api</artifactId> <scope>test</scope> </dependency> <!-- 运行JUnit 5测试的核心引擎 --> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-engine</artifactId> <scope>test</scope> </dependency> <!-- 如果要兼容老的JUnit 4测试,就添加这个Vintage引擎 --> <dependency> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> <scope>test</scope> </dependency> </dependencies>
小提醒
- 只要你的Maven版本是2.0.9及以上(现在几乎没人用更老的版本了),就支持BOM的导入功能,放心用就行。
- 如果之前你手动给JUnit依赖加过版本号,导入BOM后那些手动指定的版本会被BOM的版本覆盖,所以建议直接统一用BOM管理,别混合着来,省得出现奇怪的版本冲突。
内容的提问来源于stack exchange,提问作者Vankog
相关产品推荐
相关产品推荐

