482 lines
18 KiB
XML
482 lines
18 KiB
XML
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||
<modelVersion>4.0.0</modelVersion>
|
||
|
||
<artifactId>packaging</artifactId>
|
||
<name>OpenRefine - packaging</name>
|
||
<description>Creates packages for all supported operating systems</description>
|
||
<url>http://openrefine.org/</url>
|
||
|
||
<parent>
|
||
<groupId>org.openrefine</groupId>
|
||
<artifactId>openrefine</artifactId>
|
||
<version>3.5-SNAPSHOT</version>
|
||
</parent>
|
||
<properties>
|
||
<rootdir>${basedir}/..</rootdir>
|
||
<fullversion>0.0.0.0</fullversion>
|
||
<built.webapp.dir>./target/OpenRefine.app/Contents/Resources/webapp/</built.webapp.dir>
|
||
<webapp.dir>../main/webapp</webapp.dir>
|
||
<webapp.target>../main/target</webapp.target>
|
||
<icon.path>../graphics/icon/openrefine.icns</icon.path>
|
||
<mac.jre.path>/opt/jre1.8.0_181.jre</mac.jre.path>
|
||
|
||
<!-- default options for windows: no embedded JRE. Use the "embedded-jre" from ../settings.xml to add a JRE -->
|
||
<windows.package.jre.path>%JAVA_HOME%;%PATH%</windows.package.jre.path>
|
||
<windows.package.jre.directory>null</windows.package.jre.directory>
|
||
<windows.package.jre.outputDirectory>jre</windows.package.jre.outputDirectory>
|
||
<windows.package.jre.prefix></windows.package.jre.prefix>
|
||
</properties>
|
||
|
||
<profiles>
|
||
<profile>
|
||
<id>default</id>
|
||
<activation>
|
||
<activeByDefault>true</activeByDefault>
|
||
</activation>
|
||
<build>
|
||
<plugins>
|
||
<plugin>
|
||
<groupId>sh.tak.appbundler</groupId>
|
||
<artifactId>appbundle-maven-plugin</artifactId>
|
||
</plugin>
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-assembly-plugin</artifactId>
|
||
<executions>
|
||
<execution>
|
||
<id>package-distributions</id>
|
||
<configuration>
|
||
<descriptors>
|
||
<descriptor>linux.xml</descriptor>
|
||
<descriptor>windows.xml</descriptor>
|
||
</descriptors>
|
||
</configuration>
|
||
</execution>
|
||
</executions>
|
||
</plugin>
|
||
</plugins>
|
||
</build>
|
||
</profile>
|
||
<profile>
|
||
<id>linux</id>
|
||
<build>
|
||
<plugins>
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-assembly-plugin</artifactId>
|
||
<executions>
|
||
<execution>
|
||
<id>package-distributions</id>
|
||
<configuration>
|
||
<descriptors>
|
||
<descriptor>linux.xml</descriptor>
|
||
</descriptors>
|
||
</configuration>
|
||
</execution>
|
||
</executions>
|
||
</plugin>
|
||
</plugins>
|
||
</build>
|
||
</profile>
|
||
<profile>
|
||
<id>windows</id>
|
||
<build>
|
||
<plugins>
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-assembly-plugin</artifactId>
|
||
<executions>
|
||
<execution>
|
||
<id>package-distributions</id>
|
||
<configuration>
|
||
<descriptors>
|
||
<descriptor>windows.xml</descriptor>
|
||
</descriptors>
|
||
</configuration>
|
||
</execution>
|
||
</executions>
|
||
</plugin>
|
||
</plugins>
|
||
</build>
|
||
</profile>
|
||
</profiles>
|
||
|
||
<build>
|
||
<plugins>
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-install-plugin</artifactId>
|
||
<version>2.5.2</version>
|
||
<executions>
|
||
<!-- This is a clean snapshot of launch4j's master branch,
|
||
which includes fixes to Java discovery that we need
|
||
to support recent versions of Java. When launch4j-3.13
|
||
is officially released, remove this and the locally stored
|
||
jars -->
|
||
<execution>
|
||
<id>install-launch4j-core</id>
|
||
<phase>process-resources</phase>
|
||
<configuration>
|
||
<file>${basedir}/lib-local/launch4j-3.13-SNAPSHOT-core.jar</file>
|
||
<repositoryLayout>default</repositoryLayout>
|
||
<groupId>net.sf.launch4j</groupId>
|
||
<artifactId>launch4j</artifactId>
|
||
<classifier>core</classifier>
|
||
<version>3.13-SNAPSHOT</version>
|
||
<packaging>jar</packaging>
|
||
<generatePom>true</generatePom>
|
||
</configuration>
|
||
<goals>
|
||
<goal>install-file</goal>
|
||
</goals>
|
||
</execution>
|
||
<execution>
|
||
<id>install-launch4j-linux64</id>
|
||
<phase>process-resources</phase>
|
||
<configuration>
|
||
<file>${basedir}/lib-local/launch4j-3.13-SNAPSHOT-workdir-linux64.jar</file>
|
||
<repositoryLayout>default</repositoryLayout>
|
||
<groupId>net.sf.launch4j</groupId>
|
||
<artifactId>launch4j</artifactId>
|
||
<classifier>workdir-linux64</classifier>
|
||
<version>3.13-SNAPSHOT</version>
|
||
<packaging>jar</packaging>
|
||
<generatePom>true</generatePom>
|
||
</configuration>
|
||
<goals>
|
||
<goal>install-file</goal>
|
||
</goals>
|
||
</execution>
|
||
<execution>
|
||
<id>install-launch4j-linux</id>
|
||
<phase>process-resources</phase>
|
||
<configuration>
|
||
<file>${basedir}/lib-local/launch4j-3.13-SNAPSHOT-workdir-linux.jar</file>
|
||
<repositoryLayout>default</repositoryLayout>
|
||
<groupId>net.sf.launch4j</groupId>
|
||
<artifactId>launch4j</artifactId>
|
||
<classifier>workdir-linux</classifier>
|
||
<version>3.13-SNAPSHOT</version>
|
||
<packaging>jar</packaging>
|
||
<generatePom>true</generatePom>
|
||
</configuration>
|
||
<goals>
|
||
<goal>install-file</goal>
|
||
</goals>
|
||
</execution>
|
||
<execution>
|
||
<id>install-launch4j-win32</id>
|
||
<phase>process-resources</phase>
|
||
<configuration>
|
||
<file>${basedir}/lib-local/launch4j-3.13-SNAPSHOT-workdir-win32.jar</file>
|
||
<repositoryLayout>default</repositoryLayout>
|
||
<groupId>net.sf.launch4j</groupId>
|
||
<artifactId>launch4j</artifactId>
|
||
<classifier>workdir-win32</classifier>
|
||
<version>3.13-SNAPSHOT</version>
|
||
<packaging>jar</packaging>
|
||
<generatePom>true</generatePom>
|
||
</configuration>
|
||
<goals>
|
||
<goal>install-file</goal>
|
||
</goals>
|
||
</execution>
|
||
<execution>
|
||
<id>install-launch4j-mac</id>
|
||
<phase>process-resources</phase>
|
||
<configuration>
|
||
<file>${basedir}/lib-local/launch4j-3.13-SNAPSHOT-workdir-mac.jar</file>
|
||
<repositoryLayout>default</repositoryLayout>
|
||
<groupId>net.sf.launch4j</groupId>
|
||
<artifactId>launch4j</artifactId>
|
||
<classifier>workdir-mac</classifier>
|
||
<version>3.13-SNAPSHOT</version>
|
||
<packaging>jar</packaging>
|
||
<generatePom>true</generatePom>
|
||
</configuration>
|
||
<goals>
|
||
<goal>install-file</goal>
|
||
</goals>
|
||
</execution>
|
||
|
||
|
||
</executions>
|
||
</plugin>
|
||
<plugin> <!-- necessary for launch4j -->
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-antrun-plugin</artifactId>
|
||
<version>3.0.0</version>
|
||
<executions>
|
||
<execution>
|
||
<phase>generate-test-resources</phase>
|
||
<configuration>
|
||
|
||
<target>
|
||
<mkdir dir="./target/"/>
|
||
|
||
<mkdir dir="${built.webapp.dir}" />
|
||
|
||
<copy todir="${built.webapp.dir}">
|
||
<fileset dir="${webapp.dir}">
|
||
<include name="**/*"/>
|
||
<exclude name="WEB-INF/classes/**"/>
|
||
<exclude name="WEB-INF/lib-local/**"/>
|
||
<exclude name="WEB-INF/lib-local-src/**"/>
|
||
<exclude name="WEB-INF/lib/icu4j*.jar"/>
|
||
</fileset>
|
||
</copy>
|
||
<copy todir="${built.webapp.dir}">
|
||
<fileset dir="${webapp.dir}">
|
||
<include name="**/*.properties"/>
|
||
</fileset>
|
||
</copy>
|
||
<copy todir="${built.webapp.dir}/WEB-INF/lib/">
|
||
<fileset dir="${webapp.target}">
|
||
<include name="openrefine-main.jar" />
|
||
</fileset>
|
||
</copy>
|
||
|
||
<!-- <copy file="../server/target/openrefine-${project.version}-server.jar" tofile="${built.webapp.dir}/WEB-INF/lib/openrefine-${project.version}.jar"/> -->
|
||
|
||
<copy todir="${built.webapp.dir}/extensions">
|
||
<fileset dir="../extensions">
|
||
<include name="**/*"/>
|
||
<exclude name="**/pom.xml"/>
|
||
<exclude name="**/src/**"/>
|
||
<exclude name="**/lib-local/**"/>
|
||
<exclude name="**/lib-local-src/**"/>
|
||
<exclude name="**/target/**" />
|
||
<exclude name="**/tests/**" />
|
||
<exclude name="**/*.java"/>
|
||
<exclude name="**/.settings/**" />
|
||
<exclude name="**/.project" />
|
||
</fileset>
|
||
</copy>
|
||
|
||
<replace file="${built.webapp.dir}/WEB-INF/web.xml">
|
||
<replacefilter token="$VERSION" value="${project.version}"/>
|
||
</replace>
|
||
|
||
<replace file="${built.webapp.dir}/WEB-INF/butterfly.properties">
|
||
<replacefilter token="../../extensions" value="extensions"/>
|
||
</replace>
|
||
|
||
</target>
|
||
|
||
</configuration>
|
||
<goals>
|
||
<goal>run</goal>
|
||
</goals>
|
||
</execution>
|
||
</executions>
|
||
</plugin>
|
||
<plugin>
|
||
<groupId>com.akathist.maven.plugins.launch4j</groupId>
|
||
<artifactId>launch4j-maven-plugin</artifactId>
|
||
<version>1.7.25</version>
|
||
|
||
<!-- This is a clean snapshot of launch4j's master branch,
|
||
which includes fixes to Java discovery that we need
|
||
to support recent versions of Java.
|
||
When the maven plugin is updated to use launch4j-3.13,
|
||
this can be removed. -->
|
||
<dependencies>
|
||
<dependency>
|
||
<groupId>net.sf.launch4j</groupId>
|
||
<artifactId>launch4j</artifactId>
|
||
<classifier>core</classifier>
|
||
<version>3.13-SNAPSHOT</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>com.thoughtworks.xstream</groupId>
|
||
<artifactId>xstream</artifactId>
|
||
<version>1.4.12</version>
|
||
</dependency>
|
||
</dependencies>
|
||
<executions>
|
||
<execution>
|
||
<id>l4j-clui</id>
|
||
<phase>package</phase>
|
||
<goals><goal>launch4j</goal></goals>
|
||
<configuration>
|
||
<headerType>console</headerType>
|
||
<outfile>target/openrefine.exe</outfile>
|
||
<jar>server/target/lib/openrefine-${project.version}-server.jar</jar>
|
||
<dontWrapJar>true</dontWrapJar>
|
||
<saveConfig>true</saveConfig>
|
||
<icon>openrefine.ico</icon>
|
||
<classPath>
|
||
<mainClass>com.google.refine.Refine</mainClass>
|
||
<jarLocation>server/target/lib/</jarLocation>
|
||
<postCp>server/target/lib/*.jar</postCp>
|
||
</classPath>
|
||
<jre>
|
||
<path>${windows.package.jre.path}</path>
|
||
<minVersion>1.8.0</minVersion>
|
||
<bundledJreAsFallback>true</bundledJreAsFallback>
|
||
<initialHeapSize>512</initialHeapSize>
|
||
<maxHeapSize>2048</maxHeapSize>
|
||
<opts>
|
||
<opt>-Djava.library.path=server/target/lib/native/windows</opt>
|
||
</opts>
|
||
</jre>
|
||
<versionInfo>
|
||
<fileVersion>${fullversion}</fileVersion>
|
||
<txtFileVersion>${project.version}</txtFileVersion>
|
||
<fileDescription>openrefine</fileDescription>
|
||
<copyright>Copyright (c) 2018 OpenRefine contributors, 2010 Google, Inc.</copyright>
|
||
<productVersion>${fullversion}</productVersion>
|
||
<txtProductVersion>${project.version}</txtProductVersion>
|
||
<productName>OpenRefine</productName>
|
||
<internalName>openrefine</internalName>
|
||
<originalFilename>openrefine.exe</originalFilename>
|
||
</versionInfo>
|
||
</configuration>
|
||
</execution>
|
||
</executions>
|
||
</plugin>
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-surefire-plugin</artifactId>
|
||
<version>2.22.0</version>
|
||
<configuration>
|
||
<skip>true</skip>
|
||
</configuration>
|
||
</plugin>
|
||
|
||
</plugins>
|
||
<pluginManagement>
|
||
<plugins>
|
||
<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
|
||
<plugin>
|
||
<groupId>org.eclipse.m2e</groupId>
|
||
<artifactId>lifecycle-mapping</artifactId>
|
||
<version>1.0.0</version>
|
||
<configuration>
|
||
<lifecycleMappingMetadata>
|
||
<pluginExecutions>
|
||
<pluginExecution>
|
||
<pluginExecutionFilter>
|
||
<groupId>
|
||
org.apache.maven.plugins
|
||
</groupId>
|
||
<artifactId>
|
||
maven-antrun-plugin
|
||
</artifactId>
|
||
<versionRange>[1.4,)</versionRange>
|
||
<goals>
|
||
<goal>run</goal>
|
||
</goals>
|
||
</pluginExecutionFilter>
|
||
<action>
|
||
<ignore></ignore>
|
||
</action>
|
||
</pluginExecution>
|
||
</pluginExecutions>
|
||
</lifecycleMappingMetadata>
|
||
</configuration>
|
||
</plugin>
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-assembly-plugin</artifactId>
|
||
<version>3.3.0</version>
|
||
<executions>
|
||
<execution>
|
||
<id>package-distributions</id>
|
||
<goals>
|
||
<goal>single</goal>
|
||
</goals>
|
||
<phase>package</phase>
|
||
<configuration>
|
||
<descriptors>
|
||
<!-- TBD -->
|
||
</descriptors>
|
||
</configuration>
|
||
</execution>
|
||
</executions>
|
||
</plugin>
|
||
<plugin>
|
||
<groupId>sh.tak.appbundler</groupId>
|
||
<artifactId>appbundle-maven-plugin</artifactId>
|
||
<version>1.2.0</version>
|
||
<dependencies>
|
||
<dependency>
|
||
<!-- dependency upgraded to a newer version to fix runtime issues with some JRE versions:
|
||
https://stackoverflow.com/questions/53696439/appbundle-maven-plugin-fails-on-mac-osx-with-java-10 -->
|
||
<groupId>org.codehaus.plexus</groupId>
|
||
<artifactId>plexus-archiver</artifactId>
|
||
<version>4.2.2</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>org.apache.velocity</groupId>
|
||
<artifactId>velocity-tools</artifactId>
|
||
<version>2.0</version>
|
||
</dependency>
|
||
</dependencies>
|
||
<configuration>
|
||
<mainClass>com.google.refine.Refine</mainClass>
|
||
<bundleName>OpenRefine</bundleName>
|
||
<buildDirectory>target/OpenRefine ${project.version}</buildDirectory>
|
||
<iconFile>${icon.path}</iconFile>
|
||
<generateDiskImageFile>true</generateDiskImageFile>
|
||
<diskImageFile>
|
||
${project.build.directory}/${project.build.finalName}-mac-${project.version}.dmg
|
||
</diskImageFile>
|
||
<jvmVersion>1.8</jvmVersion>
|
||
<jrePath>${mac.jre.path}</jrePath>
|
||
<jvmOptions>
|
||
<param>-Xms512M</param>
|
||
<param>-Xmx2048M</param>
|
||
<param>-Drefine.version=${project.version}</param>
|
||
<param>-Drefine.webapp=$APP_ROOT/Contents/Resources/webapp</param>
|
||
</jvmOptions>
|
||
<additionalResources>
|
||
<fileSet>
|
||
<directory>target</directory>
|
||
<includes>
|
||
<include>OpenRefine.app/Contents/Resources/webapp/**/**</include>
|
||
</includes>
|
||
</fileSet>
|
||
</additionalResources>
|
||
<additionalBundledClasspathResources>
|
||
<fileSet>
|
||
<directory>${rootdir}/server/target/lib/</directory>
|
||
<includes>
|
||
<include>*.jar</include>
|
||
</includes>
|
||
</fileSet>
|
||
<fileSet>
|
||
<directory>${rootdir}/server/target</directory>
|
||
<includes>
|
||
<include>openrefine-${project.version}-server.jar</include>
|
||
</includes>
|
||
<excludes>
|
||
<exclude>**/lib/**</exclude>
|
||
<exclude>**/org/**</exclude>
|
||
</excludes>
|
||
</fileSet>
|
||
</additionalBundledClasspathResources>
|
||
</configuration>
|
||
<executions>
|
||
<execution>
|
||
<phase>package</phase>
|
||
<goals>
|
||
<goal>bundle</goal>
|
||
</goals>
|
||
</execution>
|
||
</executions>
|
||
</plugin>
|
||
</plugins>
|
||
</pluginManagement>
|
||
</build>
|
||
<dependencies>
|
||
<dependency>
|
||
<groupId>${project.groupId}</groupId>
|
||
<artifactId>server</artifactId>
|
||
<version>${project.version}</version>
|
||
<scope>provided</scope>
|
||
</dependency>
|
||
</dependencies>
|
||
</project>
|
||
|