IDEMPIERE-3531:add export product

now product package same buckminster age.
product output directory: org.idempiere.p2/target/products/org.adempiere.server.product
p2 repository output direcotry: org.idempiere.p2/target/repository
This commit is contained in:
hieplq 2018-03-09 14:33:31 +07:00
parent 43057f13af
commit 4415031372
3 changed files with 285 additions and 253 deletions

View File

@ -86,22 +86,11 @@
<source>true</source>
<transitive>false</transitive>
</artifact>
<!--
<artifact>
<id>org.ow2.asm:asm-commons:jar:6.0</id>
<source>true</source>
<transitive>false</transitive>
</artifact>
<artifact>
<id>org.ow2.asm:asm-tree:jar:6.0</id>
<source>true</source>
<transitive>false</transitive>
</artifact>
<artifact>
<id>org.ow2.asm:asm:jar:6.0</id>
<source>true</source>
<transitive>false</transitive>
</artifact>-->
<!-- <artifact> <id>org.ow2.asm:asm-commons:jar:6.0</id> <source>true</source>
<transitive>false</transitive> </artifact> <artifact> <id>org.ow2.asm:asm-tree:jar:6.0</id>
<source>true</source> <transitive>false</transitive> </artifact> <artifact>
<id>org.ow2.asm:asm:jar:6.0</id> <source>true</source> <transitive>false</transitive>
</artifact> -->
<artifact>
<id>org.apache.taglibs:taglibs-standard-impl:jar:1.2.5</id>
<source>true</source>
@ -606,230 +595,13 @@
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-eclipserun-plugin</artifactId>
<configuration>
<repositories>
<repository>
<id>juno</id>
<layout>p2</layout>
<url>${idempiere-equinox-url}</url>
</repository>
</repositories>
<dependencies>
<dependency>
<artifactId>org.eclipse.ecf</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.util</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.ds</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.garbagecollector</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.frameworkadmin.equinox</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.publisher.eclipse</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.ecf.provider.filetransfer.httpclient4.ssl</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.apache.commons.logging</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.ecf.provider.filetransfer.httpclient4</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.director</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.common</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.metadata</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.tukaani.xz</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.core</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.core.net</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.concurrent</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.core.contenttype</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.updatesite</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.apache.httpcomponents.httpcore</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.touchpoint.eclipse</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.core.jobs</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.preferences</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.registry</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.simpleconfigurator.manipulator</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.security</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.jarprocessor</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.engine</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.ecf.identity</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.app</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.apache.felix.scr</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.repository</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.apache.httpcomponents.httpclient</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.artifact.repository</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.osgi.compatibility.state</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.ecf.provider.filetransfer</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.launcher</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.osgi.util</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.frameworkadmin</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.repository.tools</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.publisher</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.touchpoint.natives</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.apache.commons.codec</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.osgi.services</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.ecf.filetransfer</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.ecf.provider.filetransfer.ssl</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.ecf.ssl</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.sat4j.core</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.core.runtime</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.transport.ecf</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.director.app</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.sat4j.pb</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.metadata.repository</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.simpleconfigurator</artifactId>
<type>eclipse-plugin</type>
</dependency>
</dependencies>
<appArgLine>-application org.eclipse.equinox.p2.publisher.CategoryPublisher -artifactRepository file:${project.build.directory}/repository -metadataRepository file:${project.build.directory}/repository -categoryDefinition file:${project.build.directory}/repository/category.xml -categoryQualifier -compress</appArgLine>
<appArgLine>-application
org.eclipse.equinox.p2.publisher.CategoryPublisher
-artifactRepository file:${project.build.directory}/repository
-metadataRepository file:${project.build.directory}/repository
-categoryDefinition
file:${project.build.directory}/repository/category.xml
-categoryQualifier -compress</appArgLine>
</configuration>
<executions>
<execution>

View File

@ -12,6 +12,29 @@
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-repository-plugin</artifactId>
<executions>
<execution>
<!-- install the product using the p2 director -->
<id>build-site-p2</id>
<goals>
<goal>assemble-repository</goal>
</goals>
</execution>
</executions>
<configuration>
<!-- from import package maven can lookup bundle from all repositorys
declare on target platform, also maven local so default generated site-p2
don't include that bundle. this configuration change default behavior -->
<includeAllDependencies>true</includeAllDependencies>
<!-- https://bugs.eclipse.org/bugs/show_bug.cgi?id=512396 -->
<xzCompress>false</xzCompress>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-director-plugin</artifactId>
@ -23,24 +46,34 @@
<goal>materialize-products</goal>
</goals>
</execution>
<execution>
<!-- create zip file with the installed product -->
<id>archive-products</id>
<goals>
<goal>archive-products</goal>
</goals>
</execution>
</executions>
<configuration>
<source>repository</source>
<products>
<product>
<!-- The uid in the .product file, NOT the name of the .product file -->
<id>org.adempiere.server.product</id>
<id>${idempiere.product.id}</id>
<archiveFileName>idempiere-server-${unqualifiedVersion}-${buildQualifier}</archiveFileName>
</product>
</products>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-eclipserun-plugin</artifactId>
<configuration>
<appArgLine>-application org.eclipse.equinox.p2.director -repository file:${project.build.directory}/repository -destination ${project.build.directory}/products/${idempiere.product.id}/${tycho.env.osgi.os}/${tycho.env.osgi.ws}/${tycho.env.osgi.arch} -installIU "${extra.ui.install}" -profileProperties org.eclipse.update.install.features=true -p2.os ${tycho.env.osgi.os} -p2.ws ${tycho.env.osgi.ws} -p2.arch ${tycho.env.osgi.arch} -consoleLog -roaming</appArgLine>
</configuration>
<executions>
<execution>
<goals>
<goal>eclipse-run</goal>
</goals>
<phase>package</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>

View File

@ -24,6 +24,8 @@
<idempiere.target>org.idempiere.p2.targetplatform</idempiere.target>
<idempiere-equinox-url>http://download.eclipse.org/eclipse/updates/4.7</idempiere-equinox-url>
<url.file.srv>http://downloads.sourceforge.net/project/idempiere/binary.file</url.file.srv>
<extra.ui.install>org.eclipse.equinox.p2.director, org.idempiere.equinox.p2.director.feature.feature.group, org.idempiere.fitnesse.feature.feature.group</extra.ui.install>
<idempiere.product.id>org.adempiere.server.product</idempiere.product.id>
</properties>
<profiles>
@ -166,6 +168,231 @@
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-eclipserun-plugin</artifactId>
<version>${tycho.extras.version}</version>
<configuration>
<repositories>
<repository>
<id>juno</id>
<layout>p2</layout>
<url>${idempiere-equinox-url}</url>
</repository>
</repositories>
<dependencies>
<dependency>
<artifactId>org.eclipse.ecf</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.util</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.ds</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.garbagecollector</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.frameworkadmin.equinox</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.publisher.eclipse</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.ecf.provider.filetransfer.httpclient4.ssl</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.apache.commons.logging</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.ecf.provider.filetransfer.httpclient4</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.director</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.common</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.metadata</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.tukaani.xz</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.core</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.core.net</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.concurrent</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.core.contenttype</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.updatesite</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.apache.httpcomponents.httpcore</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.touchpoint.eclipse</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.core.jobs</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.preferences</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.registry</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.simpleconfigurator.manipulator</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.security</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.jarprocessor</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.engine</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.ecf.identity</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.app</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.apache.felix.scr</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.repository</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.apache.httpcomponents.httpclient</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.artifact.repository</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.osgi.compatibility.state</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.ecf.provider.filetransfer</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.launcher</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.osgi.util</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.frameworkadmin</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.repository.tools</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.publisher</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.touchpoint.natives</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.apache.commons.codec</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.osgi.services</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.ecf.filetransfer</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.ecf.provider.filetransfer.ssl</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.ecf.ssl</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.sat4j.core</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.core.runtime</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.transport.ecf</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.director.app</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.sat4j.pb</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.p2.metadata.repository</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.simpleconfigurator</artifactId>
<type>eclipse-plugin</type>
</dependency>
</dependencies>
</configuration>
</plugin>
<plugin>
<groupId>com.coderplus.maven.plugins</groupId>
@ -178,9 +405,9 @@
<version>3.1.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>${maven.dependency.version}</version>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>${maven.dependency.version}</version>
</plugin>
</plugins>
</pluginManagement>