417 lines
16 KiB
XML
417 lines
16 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.6-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>
|
|||
|
<windows.package.jre.bundledAsFallback>false</windows.package.jre.bundledAsFallback>
|
|||
|
</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> <!-- gathers license files for all dependencies at packaging time -->
|
|||
|
<groupId>org.codehaus.mojo</groupId>
|
|||
|
<artifactId>license-maven-plugin</artifactId>
|
|||
|
<version>${license-plugin.version}</version>
|
|||
|
<executions>
|
|||
|
<execution>
|
|||
|
<phase>generate-test-resources</phase>
|
|||
|
<goals>
|
|||
|
<goal>download-licenses</goal>
|
|||
|
</goals>
|
|||
|
</execution>
|
|||
|
</executions>
|
|||
|
</plugin>
|
|||
|
<plugin> <!-- necessary for Appbundle -->
|
|||
|
<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 todir="${built.webapp.dir}/licenses/"> <!-- licenses for the backend -->
|
|||
|
<fileset dir="${project.build.directory}/generated-resources/">
|
|||
|
<include name="licenses.xml" />
|
|||
|
<include name="licenses/**/*" />
|
|||
|
</fileset>
|
|||
|
</copy>
|
|||
|
|
|||
|
<copy todir="${built.webapp.dir}/licenses/licenses/"> <!-- licenses for the frontend -->
|
|||
|
<fileset dir="${webapp.dir}/licenses/">
|
|||
|
<include name="**/*" />
|
|||
|
</fileset>
|
|||
|
</copy>
|
|||
|
|
|||
|
<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>2.1.2</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.14</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>${java.minversion}</minVersion>
|
|||
|
<maxVersion>${java.maxversion}</maxVersion>
|
|||
|
<bundledJreAsFallback>${windows.package.jre.bundledAsFallback}</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 >4.0 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.7</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>
|
|||
|
<plugin>
|
|||
|
<groupId>org.apache.maven.plugins</groupId>
|
|||
|
<artifactId>maven-deploy-plugin</artifactId>
|
|||
|
<version>${maven-deploy-plugin.version}</version>
|
|||
|
<configuration>
|
|||
|
<skip>true</skip>
|
|||
|
</configuration>
|
|||
|
</plugin>
|
|||
|
</plugins>
|
|||
|
</pluginManagement>
|
|||
|
</build>
|
|||
|
<dependencies>
|
|||
|
<dependency>
|
|||
|
<groupId>${project.groupId}</groupId>
|
|||
|
<artifactId>server</artifactId>
|
|||
|
<version>${project.version}</version>
|
|||
|
<scope>provided</scope>
|
|||
|
</dependency>
|
|||
|
</dependencies>
|
|||
|
</project>
|
|||
|
|