Hello OFBiz devs,
I had some time to check out OFBiz again and I would like to propose
some improvements to OFBiz.
The purpose is to split some independent parts from ofbiz so they can be
used by other projects that wish to interact with OFBiz.
The main beneficiaries will be ofbiz related tooling IMO.
I believe I have identified two initial candidates for splitting:
- datafile component = "framework/datafile" - split as a project /
library - usefull for tooling
- base/crypto -
framework/base/src/main/java/org/apache/ofbiz/base/crypto - to do crypto
in tooling compatible with ofbiz
- base/util - framework/base/src/main/java/org/apache/ofbiz/base/util -
this is used across both of the above stuff
== How the split should happen and how it will look like:
Use gradle subprojects feature to define 3 subprojects in the
ofbiz-framework git repo:
- base/utils
- base/crypto
- components/datafile
The projects will be standalone gradle projects that can be built
individually and have dependencies.
https://docs.gradle.org/current/userguide/declaring_dependencies_between_subprojects.html
Since these projects can build jar files, they can be published to maven
to be consumed by other apps.
Since they are projects part of ofbiz-framework, they will participate
as dependencies in the build.
I hope this can open the door to further refactoring and making OFBiz
play nicer with outside developers.
After the change, the code should function the same with regards to
normal OFBIz operations
It is somewhat related to https://issues.apache.org/jira/browse/OFBIZ-3500
--
Eugen Stan
+40770 941 271 / https://www.netdava.com