简体   繁体   English

Jackrabbit RMI Lucene冲突

[英]Jackrabbit RMI lucene conflict

I wish to integrate with Jackrabbit 2.x in my application for versioning of data. 我希望在我的应用程序中与Jackrabbit 2.x集成以进行数据版本控制。

My application has a dependency on Lucene 2.9.1 我的应用程序依赖于Lucene 2.9.1

The problem is that Jackrabbit is dependent on a higher version of Lucene ( 3.6 ) and as a result I can not place the jackrabbit-core jar in the same classpath as my application as it conflicts with my lucene jars. 问题是Jackrabbit依赖于更高版本的Lucene( 3.6 ),因此我无法将jackrabbit-core jar与我的应用程序放在相同的类路径中,因为它与Lucene jar冲突。

Seeing as I prefer not to implement a WebDAV client I thought about using the RMI implementation, however, I see that the jackrabbit-rmi jar is also dependent on jackrabbit-core and Lucene. 看到我不想实现我想到使用RMI实现的WebDAV客户端,但是,我看到jackrabbit-rmi jar也依赖于jackrabbit-core和Lucene。

Is there any way to work around this to use jackrabbit RMI in my application? 有什么方法可以解决此问题,以便在我的应用程序中使用jackrabbit RMI? or is there some other solution that will allow me to use Jackrabbit without upgrading my lucene jars? 还是有其他解决方案可以使我无需升级Lucene罐就可以使用Jackrabbit?

您可以尝试使用jarjar将较新的Lucene重新打包为另一个软件包,然后从那里使用它。

What about configuring Jackrabbit as a Ressource provider in your application server ? 在应用服务器中将Jackrabbit配置为资源提供者该怎么办? Thus you would reference it via JNDI and only via the JCR API avoiding the conflict (since the ressource would be in a different classloader). 因此,您将通过JNDI且仅通过JCR API来引用它以避免冲突(因为资源将位于不同的类加载器中)。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM