0

我的构建运行良好,直到我将以下行添加到我的 ivy.xml 文件:

<dependency org="org.springframework.data" name="spring-data-jpa" rev="1.1.0.RELEASE"/>

然后我收到以下错误:

::::::::::::::::::::::::::::::::::::::::::::::
::          UNRESOLVED DEPENDENCIES         ::
::::::::::::::::::::::::::::::::::::::::::::::
:: org.eclipse.persistence#org.eclipse.persistence.jpa;2.3.2: not found
:::::::::::::::::::::::::::::::::::::::::::::: 

我似乎在 Maven 存储库中找不到这种依赖关系。当不使用 Ivy 时,我可以使用这个 jar 成功编译我的项目:

com.springsource.javax.persistence-2.0.0.jar

但是,我在 Maven 存储库中也找不到对那个的引用。

我错过了什么或做错了什么?使用 Ivy 的新手,因此感谢所有帮助。

4

1 回答 1

2

默认情况下,ivy 将拉下所有依赖项。这很可能是Maven Central中不存在的可选 Maven 依赖项。

您需要做的是为每个依赖项设置一个常春藤配置映射,如下所示:

<configurations>
    <conf name="compile" description="Compile classpath"/>
    <conf name="runtime" description="Runtime classpath" extends="compile"/>
    <conf name="test" description="Test classpath" extends="runtime"/>
</configurations>

<dependencies>
    <!-- compile dependencies -->
    <dependency org="org.springframework.data" name="spring-data-jpa" rev="1.1.0.RELEASE" conf="compile->default"/>
</dependencies>

映射“compile->default”意味着从远程模块中下拉默认依赖项(这将排除选项)并将它们放入本地编译配置中。

有关 ivy 如何翻译远程 Maven 模块的更多信息,请参阅:

于 2013-03-01T00:05:48.873 回答