[ https://issues.apache.org/jira/browse/OFBIZ-7534?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Taher Alkhateeb updated OFBIZ-7534: ----------------------------------- Attachment: OFBIZ-7534.patch In addition to everything mentioned in the previous patches, this patch introduces a skeleton for an OFBiz plug-in system. How did we design it ------------------------------ - Add all the components defined in framework/component-load.xml as gradle subprojects - Add all the components defined in applications/component-load.xml as gradle subprojects - Add all the components defined in specialcomponents/component-load.xml as gradle subprojects - Add the start component as a gradle subproject - Add all the components in /hot-deploy as gradle subprojects - Each subproject can _optionally_ have a build.gradle script - If a directory exists in framework, applications or specialpurpose but is not defined in component-load.xml, then it will be considered a dead folder, it will not even compile and it will not be part of OFBiz and your IDE will ignore it. What are the benefits ------------------------------- - Each subproject can declare its own library dependencies in its own build.gradle away from the framework - Compilation, running, and testing is centralized at the master build script, making the subproject build scripts very small - It is very easy now to "turn on" or "turn off" a plugin with a build script that simply removes/adds it to component-load.xml! - We can now design a full plug-in API and can design a full eco-system around OFBiz. - If we decide to, we do not _have to_ compile and test everything, we can offload the maintenance of plugins to specialized teams, or even to third parties. > Migrate OFBiz from Apache Ant to Gradle build system > ---------------------------------------------------- > > Key: OFBIZ-7534 > URL: https://issues.apache.org/jira/browse/OFBIZ-7534 > Project: OFBiz > Issue Type: Improvement > Components: ALL COMPONENTS > Affects Versions: Upcoming Branch > Reporter: Taher Alkhateeb > Assignee: Taher Alkhateeb > Labels: ant, build-tools, gradle > Attachments: ANT_GRADLE_COMPARISON.txt, OFBIZ-7534.patch, > OFBIZ-7534.patch, OFBIZ-7534.patch, OFBIZ-7534.patch, build.gradle, > gradle-wrapper.jar > > > This is a major refactoring task referring to the [email > thread|http://ofbiz.markmail.org/message/vstt3wxuubmjgmqj?q=Important+Changes+to+Trunk+and+Use+of+Ant+%26+Gradle] > in which the community voted for the switch after a proposal from the PMC > The purpose of this JIRA is to achieve the following objectives > - Fully implement a working compiling system in Gradle that passes all tests > - Remove all ant and maven build scripts from the system > - update the documentation of the system to reflect these changes -- This message was sent by Atlassian JIRA (v6.3.4#6332)