简体   繁体   中英

Hurdles with Grails development

Have been developing with Grails for couple of weeks now,

Though I've loved the experience and the possibilities, I've seen following problems starting up.

Please share if you've had similar issues.. and remedies would help too.

  1. Transaction management (in-built) doesn't seem to work in some circumstances.
  2. AOP with domain objects doesn't work
  3. Grails IDE-plugins are pretty primitive
  4. GWT-Integration (with the plugin)
  5. Plugin installation (fails unusually) probably cause plugins are not matured enough.
  6. Lack of extensive documentation (though what is available is pretty good)
  7. Debugging support

If you actually want solutions for these problems you should post a separate question for each with a lot more information than you've provided here. For example, I can't possibly diagnose the cause of the problem when all I know is

Transaction management (in-built) doesn't seem to work in some circumstances.

Here is my opinion on these issues:

Transaction management (in-built) doesn't seem to work in some circumstances.

I haven't noticed any such problem

AOP with domain objects doesn't work

I guess what you mean here is that meta-programming domain objects doesn't work. I have encountered this and haven't found any solution. If you really meant AOP then I can't help you as I've never used it with Groovy.

Grails IDE-plugins are pretty primitive

The IntelliJ plugin is very, very good. The Netbeans plugin is OK. Last time I tried the Eclipse Groovy plugin it was awful. However, I believe that a new Eclipse Groovy plugin has recently been released as part of the Spring Tool Suite (STS). It's supposed to be big improvement on the previous Eclipse Groovy plugin, but I don't think it has much Grails support yet

GWT-Integration (with the plugin)

I don't use GWT, so have no comment

Plugin installation (fails unusually) probably cause plugins are not matured enough.

I've never had problems installing plugins, though if I update a plugin, I sometimes need to manually remove the old version from the .grails directory.

Lack of extensive documentation (though what is available is pretty good)

I think the level of documentation for Grails is way ahead of most OS projects. There is a wide range of Grails books available, there's an active mailing list, and the official document is 176 page long.

Debugging support

Again, it depends on the tools you're using. With IntelliJ, debugging a Grails app is as easy as debugging a Java app with Eclipse.


My own pet peeves about Grails development are:

  • Upgrading from one version to another is often a very painful process due to lack of backward compatibility. When I upgraded from 1.0.4 to 1.1.1 about 20% of my tests started failing

  • Application reloading is very hit and miss.

My feedback after few months with Grails:

  1. Didn't happen to me.
  2. I don't use AOP
  3. Wrong . IntelliJ is very good and especially the last beta version. You can download it for a free trial. I know that Eclipse support is very limited and NetBeans becomes better but still behind IntelliJ
  4. I can't say. I don't use it
  5. Agree . My piece of advice here is to follow these following principles: 1 .Use plugins as few as you can. Your application will be lighter and more maintainable. Also, you will upgrade Grails version more easily. 2 .if you want to use a plugin, test it before with a dummy project. It takes few minutes for creating a grails application and you could test your next plugin rapidly. Be aware that sometimes plugins have compatibility issues between theselves so, do not hesitate to install all of the plugins you need into your dummy project
  6. Agree . Grails is a very complex framework and documentation does not cover every aspect of Grails. But what is available is well explained. Also, grails community is very responsive, so if you don't find something you will easily have an answer in Grails forum or even on StackOverflow
  7. Definitely Agree . Again, with IntelliJ you can debug easily but it is resource-consuming and takes time when reloading your app. So usually, I end up with logging traces and I debugg my full stack of exceptions like that! IMHO, this is one of the major shortcomings of Grails.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM