2012-10-28 109 views
3

我正在编写一个使用另一个项目的jar(B)的grails应用程序(A)。 jar,B在运行时有内部依赖关系。以下是它的清单:在grails应用程序中包含jar清单的类路径

Manifest-Version: 1.0 
Archiver-Version: Plexus Archiver 
Created-By: Apache Maven 
Built-By: robertburke 
Build-Jdk: 1.6.0_37 
Class-Path: lucene-core-3.3.0.jar postgresql-8.4-702.jdbc4.jar solr-lu 
cene-snowball-1.3.0.jar solr-lucene-core-1.3.0.jar 

grails应用程序无法解析B jar中的类。它给出了:

java.lang.ClassNotFoundException: org.tartarus.snowball.ext.EnglishStemmer 

有没有办法让grails在其classpath中包含依赖项的类路径?有没有办法做到这一点,而不是明确地将jar B的依赖关系添加到grails应用程序中?

编辑:在jar B中有一个类路径,它像蜗牛一样携带它的依赖关系,这使grails应用程序在WAR路径中包含了所有的依赖关系。

+0

jar'B'是一些maven项目的构建结果吗? –

回答

0

假设您使用的是Maven(Plexus Archiver),模块(B)的POM应该包含4个第三方依赖关系,它们可以由Grails作为模块(B)的传递依赖关系来解决。 如果在应用程序(A)BuildConfig.groovy中将模块(B)的依赖性定义为dependency并且从Maven/Ivy repository(本地/远程)检索到,则还应解决传递依赖关系。

相关问题