Dear Gergely,
First thanks for the extensive reply and I do confirm that my request is “the MOE IDE plugins should implement a custom builder that will use the build settings in the IDE instead of the one defined in the Gradle / Maven build”
And my point to support that, simply, it’s a plugin for eclipse, MOE already toke steps to be integrated with IDE (vendor-locking) , I almost fail to understand the point of the plugin at this point if we must do everything with gradle, and let me be frank that gradle itself is the biggest vendor locking pushed on many java developers by many projects (that are forced to learn Groovy to build java project !!!) but this issue is out of topic.
My request is simple, we have LibGdx (which has a project for every platform and a core which contains the common code) , we then build small libs as separate projects, for example we need to have GoogleMaps, so we create projects like (GoogleMapsCore, then GoogleMapsAndroid, GoogleMapsIOS, GoogleMapsHTML ,etc) now in main project we have all those defined as
<dependency org="org" name="googlemaps-core" rev="latest.integration" conf="default->default" branch="${dep.branch}" />
<dependency org="org" name="googlemaps-android" rev="latest.integration" conf="default->default" branch="${dep.branch}" />
The magic of ivy that you don’t have to publish (while developing) the project as it will check Eclipse’s workspace and use the provided source (it even let you defined your git branch !) , now all of our projects (android, desktop, html) works without dependancies on gradle or any other tools and this make it very easy to fix stuff on the fly by opening the lib as a source and modify the code, if everything works, then we just publish the new lib/jar and close the lib project and refresh ivy , then we test again against the real jar. In MOE, we can’t do that because of “vendor-locking” to gradle, so if MOE is anti-vendor locking, it should’t be depending on gradle, IDE is a choice that millions of developers make, and we get lots of benefits from it. In MOE project, we are forced to publish a new snapshot/jar for every code change while developing (this translate to hundreds of jars to fix small problem or create simple feature).
I think the current MOE plugin is almost like Facebook HTML5 hybrid app (didn’t deliver full mobile experience), as it only warps gradle commands. You should be going native with the plugin, then you have to be bias toward the IDE (and use the IDE’s classpath and build settings)
If this didn’t make sense (Ivy stuff), I can live with allowing me to add the project manually to Eclipse (Like the test project), otherwise, are you really expecting that we publish every single modification ? how to achieve modifying code of sub-projects on-the-fly ?
Thanks in advance.
Alaa