多模块父POM声明以下物料清单导入:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>io.spring.platform</groupId>
<artifactId>platform-bom</artifactId>
<version>${spring.io.platform.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)
然后,模块POM声明一个Hibernate依赖项:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
</dependency>
Run Code Online (Sandbox Code Playgroud)
如何使用Maven命令行或IntelliJ找出有效的Hibernate版本已定义?
运行mvn dependency:tree我的模块产生:
...
[INFO] +- org.hibernate:hibernate-core:jar:4.3.11.Final:compile
...
Run Code Online (Sandbox Code Playgroud)
这并不是完全有帮助,因为它看起来与我自己管理Hibernate版本没有什么不同。如果您必须手动执行此操作,
platform-bom-2.0.3.RELEASE.pom,搜索休眠->没有spring-boot-starter-parent-1.3.3.RELEASE.pom,寻找休眠->没有spring-boot-dependencies-1.3.3.RELEASE.pom,搜索休眠- >最后...可是多么痛苦。当然,您可以查看http://docs.spring.io/platform/docs/current/reference/htmlsingle/#appendix-dependency-versions, 但是Maven是否应该能够自己找到信息?
小智 12
mvn help:effective-pom -Dverbose=true 给出了 pom 的位置信息,从一个条目在评论中进入有效 pom 的位置。参考:http : //maven.apache.org/plugins/maven-help-plugin/effective-pom-mojo.html
Did*_*r L 10
我试图mvn help:effective-pom -Dverbose从另一个答案中使用,但它对我不起作用,因为它使用的是 maven-help-plugin:2.2,并-Dverbose在 3.2.0 中引入。
相反,您应该在命令行中强制使用版本:
mvn org.apache.maven.plugins:maven-help-plugin:3.2.0:effective-pom -Dverbose=true -Doutput=effective-pom.xml
Run Code Online (Sandbox Code Playgroud)
(最好使用,-Doutput因为文件可能很大,在终端中读取不方便)
在 Eclipse 中,当查看 XML 格式的 pom 时(即在“pom.xml”选项卡中,而不是“Overview”选项卡中),只需将鼠标光标放在工件名称上,就会出现一个弹出窗口,其中包含有效版本和位置它是在哪里定义的。
| 归档时间: |
|
| 查看次数: |
3089 次 |
| 最近记录: |