使用grails几个月后的问题

时间:2011-05-05 12:27:54

标签: java plugins grails groovy

我现在使用grails几个月了,我认为这绝对是web dev应该在java方面的方式。但是有两件事情我会关注未来的项目,我想知道你对它的看法以及你如何避免这种情况。

首先,插件很棒,但有一件事我不喜欢或不了解如何正确处理依赖。我的意思是,我可以在我的项目中使用一堆插件结束,其中2或3个使用不同版本的相同jar,并且很难找出导致问题的女巫。有没有一种简单的方法可以避免这类问题?

其次,groovy很好,但我认为语法不匹配很容易。你可以写一行“;”最后,用groovy写一些java mix。是否有一些工具可以强制执行groovy语法,因为与java dev相比,还没有那么多人在外面使用groovy?

感谢!

3 个答案:

答案 0 :(得分:3)

对于第二个。

Groovy主要是一个Java超集,因此只删除;不会使程序变得更加“groovier”。有时必须努力将Java代码减少为3倍的Groovy代码。

我的意思是说明它很少是自动分析的问题。

但是,IntelliJ IDEA在寻找不必要的代码方面做得很好。 CodeNarc看起来还不错。

嗯,可能我正在重复https://stackoverflow.com/questions/1525652/groovy-code-analysis-tool

答案 1 :(得分:3)

  

我可以在我的项目中使用一堆插件结束,其中2或3个使用不同版本的相同jar,很难找出导致问题的女巫。有没有一种简单的方法可以避免这类问题?

最新版本的Grails引入了dependency resolutio n DSL,可以解决这些问题。如果您当前正在将JAR复制到lib文件夹并在application.properties中指定插件依赖项,那么您将绕过Grails'依赖解析(基于Ivy)。使用Grails'依赖项解析,您应该在BuildConfig.groovy中指定依赖项并删除lib文件夹中的所有JAR。

答案 2 :(得分:1)

对于第一,我发现在Grails中使用插件的最佳方法是不使用它们。或者更确切地说,使用那些维护良好的(即:Shiro,MailService)或由大组(Apache)或Grails提交者创建的。

对于其他插件,我们曾经下载插件,打开它,查看源代码,然后引入我们需要的东西。大多数插件都会做很多额外的事情,因为它们需要支持可配置性。您可以将所需的部分添加到其中,然后将其添加进去。这样做的好处是您最终还将学习Grails的内部结构。

对于第二,Victor是对的。 Groovy在很大程度上是Java的超集。编写Groovy-ish代码涉及诸如使用闭包,理解动态类型的好处以及通过其特殊构造函数填充加载对象之类的事情。这只是一个初步的水平,Groovy做得更多,你会随着时间的推移学到更多。

我不会太担心尝试强制执行Groovy语法。只需写下您所知道的内容,并学习Groovy的做事方式。文件的扩展名应该向开发人员确定它不是直接的Java代码。如果你使用闭包,它也会很快识别它。