iDempiere uses OSGi (Eclipse Equinox) for its plugin architecture, allowing you to extend the system without modifying core code.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/idempiere/idempiere/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
Before you begin, ensure you have:- Java Development Kit (JDK) 17 or higher
- Apache Maven 3.6+
- Git
- Eclipse IDE (recommended) or IntelliJ IDEA
- PostgreSQL or Oracle Database
Clone the Repository
Set up the database
Create a PostgreSQL database for development:Run the initial seed script (located in
db/ddlutils/postgresql/).Configure local properties
Copy the template configuration file:Edit
adempiere-local.properties with your database credentials:IDE Setup
Eclipse Setup
Import as Maven project
- Open Eclipse
- Go to File → Import → Maven → Existing Maven Projects
- Select the
idempieredirectory - Eclipse will detect all plugin modules automatically
Set target platform
- Open
org.idempiere.p2.targetplatform/org.idempiere.p2.targetplatform.target - Wait for Eclipse to resolve dependencies
- Click Set as Active Target Platform
IntelliJ IDEA Setup
Verify Installation
Run the iDempiere server:- Username: SuperUser
- Password: System
Project Structure
The iDempiere source code is organized into OSGi bundles:META-INF/MANIFEST.MF- Bundle metadatapom.xml- Maven configurationbuild.properties- Build configurationOSGI-INF/- OSGi Declarative Services configuration
Next Steps
Model-Driven Architecture
Understand iDempiere’s dictionary-based architecture
Creating Plugins
Build your first iDempiere plugin
Callouts
Implement field-level business logic
Processes
Create custom business processes
Contributing
Before contributing code to iDempiere core:- Read the Contributing Guide
- Follow the Fork and Branch Workflow
- Use the commit format:
IDEMPIERE-[####] [Ticket Description] - Create a pull request for review