A target platform is necessary to build a iDempiere plugin. This is a smart target platform.
- Java 11, commands
java
andjavac
. - Maven 3.6.0
- Set
IDEMPIERE_REPOSITORY
env variable.
Compile target platform:
./plugin-builder
You could create a file plugins.txt
with all plugin's paths on newlines, example:
/plugin-path-1
/plugin-path-2
Compile target platform and plugins:
./plugin-builder /plugin-path-1 /plugin-path-2
Use the parameter debug
for debug mode example:
./plugin-builder debug /plugin-path-1 /plugin-path-2
To use .\plugin-builder.bat
for windows.
Set commit as qualifier (just for linux) commit
parameter:
./plugin-builder commit
Set build number as qualifier (just for linux, usually on jenkins) build
parameter:
./plugin-builder build
Go to the ./pom.xml
file and add the plugin's relative path, example com.ingeint.template
:
<modules>
<module>com.ingeint.template.p2.targetplatform</module>
<module>../com.ingeint.template</module>
</modules>
Go to com.ingeint.template.p2.targetplatform/com.ingeint.template.p2.targetplatform.target
and update the path:
<repository location="file:///home/user/idempiere/org.idempiere.p2/target/repository"/>
Go to com.ingeint.template.p2.targetplatform/pom.xml
and update:
<relativePath>../../idempiere/org.idempiere.parent/pom.xml</relativePath>