2012-04-21 377 views
15

我是grails newby。我在Windows 7上从命令行(无IDE)使用grails 2.0.3。如何向grails项目添加“非mavenized”jar依赖项

我只是在grails文档中运行'hello world'示例。

我有一个自定义的jar,不在maven中,我想在我的项目中使用它。我将它添加到lib文件夹并执行刷新依赖。我修改了控制器从jar中导入一个类。当我做'run-app'时,编译器抱怨说找不到这个类。

我在网上看到几个例子,人们必须像这样在BuildConfig.groovy中添加一行:runtime'httpclient:httpclient:3.0.1'。但是因为我没有使用maven或常春藤,我怎么才能在我的类路径上获得这个jar?

我指的是上面的例子是http://grails.1312388.n4.nabble.com/External-Jar-in-Grails-td4388010.html

回答

25

Grails的2.0-2.2

好吧,我终于想通了什么,我需要做的。假设我的jar被命名为'mylib.jar'。我需要将其重命名为mylib-1.0.jar并将其移动到lib目录。然后我需要将以下内容添加到BuildConfig.groovy中:

dependencies { 
     // specify dependencies here under either 'build', 'compile', 'runtime', 'test' or 'provided' scopes eg. 

     // runtime 'mysql:mysql-connector-java:5.1.16' 
    runtime 'mylib:mylib:1.0' 
    } 

我想这对除我以外的所有人都是显而易见的。希望这可以帮助别人。

Grails的2.3 -...

只要把水罐里的lib/。不要修改BuildConfig.groovy(c)kaskelotti

+0

在这里有同样的问题,即使有你的帮助,我似乎无法得到这个[ez-vcar](http://code.google.com/p/ez-vcard/)的工作。 添加ez-vard JAR到** lib文件夹**,尝试依赖刷新,添加到BuildConfig'compile“ez-vcard:0.7.3”'...仍然不起作用,留下以下内容 '错误警告:指定的依赖性定义运行时(ez-vcard:0.7.3)无效!跳过......' 任何你能想到的凯尔都将不胜感激,非常愚蠢的问题,驱使我疯狂 – RST 2013-04-07 21:20:26

+0

只是一个疯狂的猜测,但也许在名称上的破折号导致一个问题。尝试重新命名没有破折号的罐子。 – Kyle 2013-04-08 01:22:04

+0

感谢无论如何,没有工作......认为有一个更深的问题,现在要做一个帖子 – RST 2013-04-08 11:18:45

0

如果你的jar文件在lib文件夹中,并且还在buildconfig.groovy中输入,并且你的构建路径中找不到jar,那么尝试使用下面的命令。

grails compile --refresh-dependencies 
相关问题