2012-02-06 46 views
1

我一直在寻找使用grails来构建模拟服务器框架,但一直在STS中配置它的麻烦。在eclipse中添加依赖项目grails项目在运行应用程序失败

基本要求是有一个核心框架存在于自己的项目中,最终最终会成为WAR工件,然后对每个被模拟的服务创建一个新的jar项目,包含服务配置(通常是xml/json响应和groovy文件进行动态响应),这些文件将作为依赖项(在构建过程中使用配置文件)被拉到主WAR文件中。

使用Maven和配置文件可以很好地定义此外部构建过程。我已经对这个原型进行了原型设计,并且这些原型都是从詹金斯这样的建筑工人身上流下来的。

我遇到的麻烦是使用本地eclipse项目依赖管理和eclipse grails支持来设置一个可用的eclipse环境。我想要的是一个包含框架的标准grails项目,然后是一个包含服务配置文件的标准groovy项目,然后将后一个项目作为依赖添加到前者。然而,我发现,如果你这样做,然后调用run-app,groovy项目中的类和资源就不会包含在正在运行的应用程序中。我试过检查导出,但这没有任何区别。

到目前为止,我发现的唯一解决方法是使groovy项目maven工件成为grails应用程序中的依赖项,并在每个构建中将其引入。这涉及到在每次对该项目进行更改时,将groovy项目打包并安装到本地回购站的不利步骤。当然,这种方法的另一个主要缺点是我没有从动态更新中受益,并且groovy项目中的任何代码更改都需要重新启动grails应用程序。

有没有人以这种方式成功配置eclipse?如果这是不可能的,是否有某种修改grails构建过程的方法,以便通过相对路径包含另一个项目,比如说?

回答

1

从这个FAQ条目判断,推荐的方法是使用他们的插件架构。将不得不看看这是否与月食很好地搭配。

http://grails.org/FAQ#Q:%20I'%20%%20%%20%%20%20%20%20%20%20%20%20%%20%

更新:

很可能有你的Grails应用程序中加入与相对路径的条目BuildConfig.grails到您的插件例如识别您的插件的扩展工作目录

grails.plugin.location。 “我-插件”= “../my-plugin”

使用 '包插件' 命令打包插件后,你的Grails应用程序可以然后调试Groovy和Java文件在你的插件。它也将在应用程序重新启动后接受对插件的更改。所以这几乎是我所追求的。

然而,关于如何创建一个混合了xml/json/groovy文件(您命名它)的自定义资源结构并将它们包含在生成的插件中,我们并不直观。更不用说相对资源路径的奇怪了。我读过一些地方,你可以使用_install.groovy自定义什么是不包含的,但是又不知道如何做到这一点。我最担心的是,这个项目应该由不熟悉核心技术的用户编辑,所以我真的只想给他们展示一个没有所有这些grails脚手架的清洁项目。

我对这种方法的臃肿感到绝望。一个简单的groovy项目有什么问题,这个项目可以作为一个简单的jar包含在内?这看起来似乎有点矫枉过正,特别是对于像我这样的简单需求。

相关问题