RandomSec/packaging/pom.xml
2020-07-13 13:53:54 -04:00

482 lines
18 KiB
XML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<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>