[
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)