File tree Expand file tree Collapse file tree 1 file changed +2
-2
lines changed
Expand file tree Collapse file tree 1 file changed +2
-2
lines changed Original file line number Diff line number Diff line change @@ -197,7 +197,7 @@ Maven 在遇到这种问题的时候,会遵循 **路径最短优先** 和 **
197197
198198根据路径最短优先原则,X(1.0) 会被解析使用,也就是说实际用的是 1.0 版本的 X。
199199
200- 但是!!!这会一些问题:如果 D 依赖用到了 1.5 版本的 X 中才有的一个类,运行项目就会报` NoClassDefFoundError ` 错误。如果 D 依赖用到了 1.5 版本的 X 中才有的一个方法,运行项目就会报` NoSuchMethodError ` 错误。
200+ 但是!!!这会一些问题:如果 C 依赖用到了 1.5 版本的 X 中才有的一个类,运行项目就会报` NoClassDefFoundError ` 错误。如果 C 依赖用到了 1.5 版本的 X 中才有的一个方法,运行项目就会报` NoSuchMethodError ` 错误。
201201
202202现在知道为什么你的 Maven 项目总是会报` NoClassDefFoundError ` 和` NoSuchMethodError ` 错误了吧?
203203
@@ -217,7 +217,7 @@ Maven 在遇到这种问题的时候,会遵循 **路径最短优先** 和 **
217217
218218一般我们在解决依赖冲突的时候,都会优先保留版本较高的。这是因为大部分 jar 在升级的时候都会做到向下兼容。
219219
220- 如果高版本修改了低版本的一些类或者方法的话,这个时候就能直接保留高版本了 ,而是应该考虑优化上层依赖,比如升级上层依赖的版本。
220+ 如果高版本修改了低版本的一些类或者方法的话,这个时候就不能直接保留高版本了 ,而是应该考虑优化上层依赖,比如升级上层依赖的版本。
221221
222222还是上面的例子:
223223
You can’t perform that action at this time.
0 commit comments