simplicityitself / grails-gwt

New Grails GWT Plugin
Other
23 stars 18 forks source link

Resolving dependencies very slow using Aether #54

Open bwolff opened 10 years ago

bwolff commented 10 years ago

Using GWT 1.0 plugin together with Grails 2.3.7 and the new "maven" dependency resolution, I noticed that running Grails commands like "run-app" or "compile-gwt-modules" take very long to start.

It starts to get really slow after the "COMPILE START" println output and before the single dependencies are added.

Using "ivy" as the dependency resolution manager doesn't cause this long waiting times. I could not trace down what the problem might be, maybe something related to the "extended-dependencies" plugin?

Can anyone confirm this issue and experiences the same?

donbeave commented 10 years ago

Please check this issue: https://github.com/simplicityitself/grails-gwt/issues/50

bwolff commented 10 years ago

Ok, thanks, so it looks like this very slow behaviour is a tribute that was payed to support both, Ivy and Aether dependency resolution?

Unfortunately ever since we use this plugin ~3 years, the dependency resolution and classpath handling was usually a constant pain and cause for many problems. I'm afraid it has grown out of control and was never really cleaned up.

I tried once to dive into the classpath handling in the scripts that come with the plugin, but in the end I failed. There are often implicit variables used in the closures and I often didn't manage to find out where they came from or where they are used. I didn't have the time in the end recreated it from scratch.

Maybe there is hope someday that the dependencies could be resolved properly? Maybe someone who is really into the internal could shed some light on what is required in terms of extra dependency handling or why it is so difficult. The dependencies could be resolved by the default Grails mechanism and simply be put in the classpath of the GWT compiler and hosted mode etc. Why is it necessary to do some custom resolution of the dependencies that causes the mechanism to be so slow?