Replies: 2 comments 1 reply
-
I agree with much of what you said, but maybe not so much the OSGi part. I'd like to see a more unified approach that leans one how Spring Boot is doing it with Starters and AutoConfigure, which is how we try to dev most of our internal plugins. Where possible we keep them only dependent on spring boot (and groovy of course). Only time it doesnt work for us is when we are doing GORM dependent modules or there is some strange load order with grails plugins that we need to intercept. |
Beta Was this translation helpful? Give feedback.
-
@itexto @basejump I really like OSGi and have been obsessed with it for a long time, but it's expensive to learn and difficult to implement in a team.So now I've developed Dynamic Modules Plugin for Grails, which I was able to implement very quickly thanks to Groovy's very powerful DSL, combined with the Grails Plugin System. This plugin has now been merged into the Grace Framework and is now a core part of the Grace Plugin API. Moreover, it can be used directly in Spring Boot applications, which is great, here's an example. |
Beta Was this translation helpful? Give feedback.
-
The biggest problem with Grails is the plugin ecosystem. The idea is great, but on the long run it often causes problems on projects with a long duration. Or the plugin is simply abandoned or the team just forget to update for the latest version.
And this is horrible becasue you get stuck on an old version of Grails (I have seen many projects that still uses Grails 2.x because of this). And here I'm not mentioning the fact that because of THIS problem many people choose to abandon the framework.
I remember that when Grails 2.x was on development there was this idea of making plugins as OSGi bundles. The idea was soon abandoned (because it was said that OSGi was going anywhere and there was no more hype about it on those days), but it's core still is a valid one. You whould be allowed to code against the interfaces (facades) provided by those plugins, which, as OSGi bundles, could be updated on an isolated way, which could make possible for us to upgrade to newer versions of Grails without having to upgrade all our plugins.
This is just one idea, because the framework is great, but the plugin system is our greatest drawback too.
Beta Was this translation helpful? Give feedback.
All reactions