【发布时间】:2019-05-22 09:22:44
【问题描述】:
在我的项目中,我只有一个依赖项(现在还为时过早!) - Hibernate。在我的 Ivy 配置中,我有以下内容:
<dependencies>
<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-core -->
<dependency org="org.hibernate" name="hibernate-core" rev="5.4.0.Final" conf="sources->sources"/>
<dependency org="org.hibernate" name="hibernate-core" rev="5.4.0.Final" conf="binaries->default"/>
</dependencies>
在我的 build.xml 中,我有这个:
<ivy:retrieve conf="sources" pattern="war/WEB-INF/lib/[conf]/[artifact](-[classifier]).[ext]"/>
<ivy:retrieve conf="binaries" pattern="war/WEB-INF/lib/[artifact](-[classifier]).[ext]"/>
现在,在我的 lib 文件夹中,我有一个名为 sources 的文件夹,里面只有一个 jar,hibernate-core-sources.jar - 完美!!但是在 lib 文件夹本身中,我没有一个 jar - 我有 18 个 jar,一个用于 Hibernate 的每个依赖项(以及祖父依赖项等)
我真正想看到的是hibernate-core.jar 和hibernate-core-deps.jar。
这样的事情可能吗?如果不是,是否有可能是hibernate-core.jar 和my-app-deps.jar?如果这是不可能的,它可以将它们全部捆绑到一个my-app-deps.jar 中吗?
我对 Ivy 不是很有经验,所以你的答案越明确越好!
【问题讨论】:
-
为什么需要这个?我的意思是你需要你的依赖项才能运行你的应用程序。问只是因为我们在这里可能有一个 XY 问题:)
-
因为我喜欢查看我的 lib 文件夹并查看我真正需要能够使用的东西,而不是碰巧是我的依赖项之一的隐藏依赖项。但是,你是对的,我可以看到这可能是一个更大问题的征兆,但现实是它仅仅是为了审美目的。无论如何,Ivy 都能妥善管理它们,这是肯定的。