First they ignore you
then they ridicule you
then they fight you
then you win
    -- Mahatma Gandhi
Chinese => English     英文 => 中文             
随笔-143  评论-742  文章-0  trackbacks-0
安装 Grails Eclipse,去grails网站下载。
先将生成后的grails application导入eclipse。

创建一个Run, Java Application, 运行类grails.util.GrailsMain,
参数是-Dbase.dir=${project_loc} -Dserver.port=8080 -Dgrails.env=development
Environment下创建GRAILS_HOME=安装目录

就可以开始运行了,如果要单步调试就用Debug来运行,将断点设在groovy文件里,运行的时候就会停下来,可以单步执行,其他操作与普通的java调试一样。

另 外说一下如何在eclipse里执行grails自动生成脚本。就是创建Extrnal Tools,运行命令就是grails或grails.bat,设置变量 GRAILS_HOME,工作目录是${project_loc},参数为${string_prompt},这样在运行时会提示输入命令。

如果输入create-domain-class,就是创建域对象,会在console窗口里提示输入域对象名称。


原文地址:http://blog.matrix.org.cn/magicgod/entry/200704091
附:Groovy与Grails同甘共苦,苦尽甘来
posted on 2007-04-22 22:36 山风小子 阅读(1578) 评论(12)  编辑  收藏 所属分类: Groovy & Grails

评论:
# re: [转载]如何在eclipse下调试grails 2007-04-22 23:51 | flyisland
还要注意两点:
1)如果出现找不到log4j文件的错误,执行一次“grails package”。不晓得为什么,有时候这个文件没有被放到\WEB-INF\classes目录中

2)如果jetty出现无法编译jsp错误,增加 JAVA SDK 中的tools.jar到classpath。

我今天上面两个问题都碰到了,就是这样解决的  回复  更多评论
  
# re: [转载]如何在eclipse下调试grails 2007-04-23 00:13 | 山风小子
@flyisland
嗯,多谢您的补充,
对于您所提及的问题1,我一般都是手动将log4j.properties复制到<Your project root>/web-app/WEB-INF/classes
您的方法更方便 :)

而问题2,我没碰到过,请看下您的环境设置是否正确 :)  回复  更多评论
  
# re: [转载]如何在eclipse下调试grails 2007-04-24 10:45 | Rondy.F
当我运行grails.util.GrailsMain时,发现在后台输出如下:
Starting Grails Jetty server for location: D:\eclipse\rcpspace\rondy\web-app
Warning: No Groovy files found in application
Attempting to load [13] core plugins
Grails plug-in [i18n] with version [0.4.2] loaded successfully
Grails plug-in [quartz] with version [0.4.2] loaded successfully
Grails plug-in [core] with version [0.4.2] loaded successfully
Grails plug-in [domainClass] with version [0.4.2] loaded successfully
Grails plug-in [controllers] with version [0.4.2] loaded successfully
Attempting to load [0] user defined plugins
Grails plug-in [dataSource] with version [0.4.2] loaded successfully
Grails plug-in [codecs] with version [0.4.2] loaded successfully
Grails plug-in [hibernate] with version [0.4.2] loaded successfully
Grails plug-in [services] with version [0.4.2] loaded successfully
Grails plug-in [scaffolding] with version [0.4.2] loaded successfully
No data source found for environment [development]. Please specify alternative via -Dgrails.env=myenvironment
No data source or domain classes found. Data source configuration skipped

上面有两个地方:
1.Warning: No Groovy files found in application
2.No data source found for environment [development]. Please specify alternative via -Dgrails.env=myenvironment
导致我访问时,主页上一片空白.也就是没有控制器的链接.请问这是什么原因啊??  回复  更多评论
  
# re: [转载]如何在eclipse下调试grails 2007-04-24 10:49 | Rondy.F
在我运行grails.util.GrailsMain时,后台输出如下信息:
Starting Grails Jetty server for location: D:\eclipse\rcpspace\rondy\web-app
Warning: No Groovy files found in application
Attempting to load [13] core plugins
Grails plug-in [i18n] with version [0.4.2] loaded successfully
Grails plug-in [quartz] with version [0.4.2] loaded successfully
Grails plug-in [core] with version [0.4.2] loaded successfully
Grails plug-in [domainClass] with version [0.4.2] loaded successfully
Grails plug-in [controllers] with version [0.4.2] loaded successfully
Attempting to load [0] user defined plugins
Grails plug-in [dataSource] with version [0.4.2] loaded successfully
Grails plug-in [codecs] with version [0.4.2] loaded successfully
Grails plug-in [hibernate] with version [0.4.2] loaded successfully
Grails plug-in [services] with version [0.4.2] loaded successfully
Grails plug-in [scaffolding] with version [0.4.2] loaded successfully
No data source found for environment [development]. Please specify alternative via -Dgrails.env=myenvironment
No data source or domain classes found. Data source configuration skipped

里面有两个地方:
1.Warning: No Groovy files found in application
2.No data source found for environment [development]. Please specify alternative via -Dgrails.env=myenvironment
导致我的访问的主页上一片空白,也就是没有那些控制器的链接,请问这是什么原因啊?  回复  更多评论
  
# re: [转载]如何在eclipse下调试grails 2007-04-24 11:31 | flyisland
@山风
关于第二个问题,我遇到几次了,在这个地方(http://nuin.blogspot.com/2005/05/launch-jetty-from-eclipse-solving.html),发现解决方法的。看来不少人都遇到过这个问题,而你的运气不错,呵呵  回复  更多评论
  
# re: [转载]如何在eclipse下调试grails 2007-04-24 14:33 | 山风小子
@Rondy.F
您或许没有取消官方GroovyEclipse插件的"Enable Groovy Compiler Generating Class Files"
设置路径在Window -> Preferences -> Groovy Preferences -> Enable Groovy Compiler Generating Class Files, 取消checkbox的选择即可

您看看是否是这个问题 :)  回复  更多评论
  
# re: [转载]如何在eclipse下调试grails 2007-04-24 14:35 | 山风小子
@flyisland
如果是在Eclipse启动Grails的话,的确是要将tools.jar加到Eclipse的classpath中的。
但由于我是利用命令行启动的,所以tools.jar已经在系统的classpath环境变量中了,自然省事不少 :)  回复  更多评论
  
# re: [转载]如何在eclipse下调试grails 2007-04-24 22:53 | Rondy.F
问题解决了,可能是我的环境的问题.
我在生成的gsp页面中,经常看到${it.name?.encodeAsHTML()}这种写法,其中的"?"是什么意思啊!!!我知道在sql中它可以起占位符的作用,在这里是什么作用呢?我的理解是它代替了前面的it.name或者没有给定占位符的具体值就忽略.不知道是否正确???  回复  更多评论
  
# re: [转载]如何在eclipse下调试grails 2007-04-24 23:09 | 山风小子
@Rondy.F
不好意思,您猜错了 :)

?. 是‘安全引用符’,举例来说:
在Java中,为了程序的鲁棒性(robust),在对一个对象进行操作之前,我会判断它是否为null
if (null != obj) {
obj.doSomething();
}

而在Groovy就方便多了,你可以用?.来达到上面的目的
obj?.doSomething()
等价于
obj == null ? null : obj.doSomething()
如果obj为null,则obj?.doSomething()的结果为null,否则就正常执行与Java无异:)

实例:
def obj = null
println obj?.hello() // 打印出null
由于obj为null,所以就不执行hello(),即便obj中没有定义hello这个方法也不会报错 :)
  回复  更多评论
  
# re: [转载]如何在eclipse下调试grails 2007-04-25 09:55 | Rondy.F
@山风小子
哈哈,完全了解,谢谢你!希望可以看到你在Groovy&Grails方面更多的介绍:)  回复  更多评论
  
# re: [转载]如何在eclipse下调试grails 2007-04-25 11:26 | 山风小子
@Rondy.F
呵呵~我会的 :)  回复  更多评论
  
# re: [转载]如何在eclipse下调试grails 2007-10-16 15:30 | 范德萨
java文件修改了好像要重启才行,郁闷了.  回复  更多评论
  



标题  
姓名  
主页
验证码 *  
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交