我正在尝试手动将lucene jar文件添加到我的本地ivy存储库.我有其他apache jar所以在现有的文件夹下.ivy2\cache\apache.org \我创建了一个名为lucene的文件夹,里面有一个名为jars的文件夹.然后我将名为lucene-3.0.3.jar的jar放在jars文件夹中.下一步我在lucene文件夹中创建了以下ivy-3.0.3.xml:
<?xml version="1.0" encoding="UTF-8"?>
<ivy-module version="1.0">
<info organisation="apache.org" module="lucene" revision="3.0.3" status="release" publication="20090416105712">
</info>
<publications>
<artifact name="lucene-3.0.3" type="jar" ext="jar"/>
</publications>
</ivy-module>
Run Code Online (Sandbox Code Playgroud)
然后我尝试从这样的项目中引用它:
<dependency org="apache.org" name="lucene" rev="3.0.3"/>
Run Code Online (Sandbox Code Playgroud)
但我得到一个错误:"未解决的依赖:apache.org #lucene; 3.0.3:未找到"
我能够从我的.ivy2缓存文件夹中找到其他依赖项,只是我手动创建的这个依赖项给出了问题.
我错过了什么?
我同意马克的观点,你应该将文件放入本地存储库而不是缓存中。特别是因为期望缓存可以(并且经常)随时被删除。
但是,为了解决您的问题,错误的最可能原因是您的文件夹层次结构与预期模式不匹配。默认情况下,缓存的布局如下:
[organisation]/[module]/[revision]/[type]s/[artifact].[ext]
Run Code Online (Sandbox Code Playgroud)
因此,您必须将文件移动到以下目录才能消除该错误:
.ivy2\cache\apache.org\lucene\3.0.3\jars\lucene.jar
Run Code Online (Sandbox Code Playgroud)
有时,默认模式会根据设置文件进行更改,因此确定预期模式的唯一方法是查看缓存中的其他 jar(例如,现在,我的缓存在末尾有 [revision] 部分文件名,其他都一样)。
然而,我同意马克的观点,你真的不想手动将东西添加到缓存中。相反,将它们添加到默认的本地存储库,或者更好的是,创建您自己的基本存储库。
| 归档时间: |
|
| 查看次数: |
8870 次 |
| 最近记录: |