KB-207 – Core Java Build and Signed Deployment¶
Knowledge Base ID: KB-207
Project: BLACK ERP
Version: 1.0
Status: Superseded
Last Update: 2026-06-26
Superseded By: KB-208 – Core Development Lifecycle
1. Purpose¶
This document records the investigation performed while validating the correct deployment procedure for ADempiere Core modifications.
It is retained as historical documentation.
The certified deployment process is now documented in:
KB-208 – Core Development Lifecycle
2. Initial Assumption¶
During the first deployment attempts, it was believed that updating the runtime consisted of:
- Compiling Java.
- Generating Adempiere.jar.
- Copying the generated JAR into Tomcat.
Testing demonstrated that this assumption was incomplete.
3. Engineering Findings¶
The investigation confirmed the following:
clientDistributesuccessfully generates a compiledAdempiere.jar.- This artifact is intended as an intermediate build artifact.
- It is not the final production runtime.
- The production runtime contains additional packaged modules that are merged during the installation build.
- Production libraries must be generated using
setupALib.
The runtime generation process performs additional packaging operations beyond digital signing.
4. Runtime Packaging¶
The certified runtime generation process:
- Creates
packages.jar - Generates
AdempiereOriginal.jar - Produces the final signed
Adempiere.jar - Preserves packaged runtime modules
- Preserves runtime metadata
These steps are mandatory before deployment.
5. Lessons Learned¶
The MX VAT Cash Basis implementation produced several important findings.
Replacing the runtime using only the artifact generated by clientDistribute caused:
- Missing packaged runtime components
- Missing manufacturing classes
- Missing warehouse classes
- Missing fixed asset classes
- Runtime inconsistencies
The investigation demonstrated that the production runtime is larger than the compilation artifact because it incorporates additional packaged modules.
6. Historical Errors Observed¶
During the investigation the following errors were observed:
- ClassNotFoundException
- Missing ModelValidators
- Missing packaged modules
- SHA-256 digest errors after modifying signed JARs directly
- Runtime inconsistencies caused by incomplete deployment
These findings led to the certification of the official deployment lifecycle.
7. Certified Process¶
The official procedure is documented in:
KB-208 – Core Development Lifecycle
This document should no longer be used as an operational deployment guide.
8. Related Knowledge Base¶
- KB-104 – Deployment Procedure
- KB-206 – Build and Compilation
- KB-208 – Core Development Lifecycle
Revision History¶
| Version | Date | Description |
|---|---|---|
| 0.1 | 2026-06-26 | Initial investigation document. |
| 1.0 | 2026-06-26 | Marked as superseded after certification of KB-208. |