Permalink
Cannot retrieve contributors at this time
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
PuffinPlot/pom.xml
Go to fileThis commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
589 lines (580 sloc)
21.2 KB
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?> | |
<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/xsd/maven-4.0.0.xsd"> | |
<modelVersion>4.0.0</modelVersion> | |
<groupId>net.talvi.puffinplot</groupId> | |
<artifactId>puffinplot</artifactId> | |
<version>1.5-SNAPSHOT</version> | |
<name>PuffinPlot</name> | |
<url>http://talvi.net/puffinplot/</url> | |
<properties> | |
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | |
<maven.compiler.source>1.8</maven.compiler.source> | |
<maven.compiler.target>1.8</maven.compiler.target> | |
<build.date>${maven.build.timestamp}</build.date> | |
<asciidoctor.maven.plugin.version>2.0.0-RC.1</asciidoctor.maven.plugin.version> | |
<asciidoctorj.pdf.version>1.5.0-beta.8</asciidoctorj.pdf.version> | |
<asciidoctorj.version>2.2.0</asciidoctorj.version> | |
<jruby.version>9.2.9.0</jruby.version> | |
</properties> | |
<repositories> | |
<repository> | |
<!-- freehep-export, freehep-swing, freehep-util, and freehep-xml | |
are not on Maven Central, so we have to add the FreeHEP | |
repository to use them. --> | |
<id>freehep</id> | |
<name>FreeHEP</name> | |
<url>http://java.freehep.org/maven2</url> | |
</repository> | |
<repository> | |
<!-- This repository provides a Maven proxy for the official | |
RubyGems.org repository, which is needed to build the Asciidoc | |
manual. --> | |
<id>rubygems-proxy</id> | |
<name>Rubygems Proxy</name> | |
<url>http://rubygems-proxy.torquebox.org/releases</url> | |
<layout>default</layout> | |
<releases> | |
<enabled>true</enabled> | |
</releases> | |
<snapshots> | |
<enabled>false</enabled> | |
<updatePolicy>never</updatePolicy> | |
</snapshots> | |
</repository> | |
</repositories> | |
<pluginRepositories> | |
<pluginRepository> | |
<!-- Needed for the 1.2.1-SNAPSHOT version of appbundle-maven-plugin. --> | |
<id>snapshots-repo</id> | |
<url>https://oss.sonatype.org/content/repositories/snapshots</url> | |
<releases><enabled>false</enabled></releases> | |
<snapshots><enabled>true</enabled></snapshots> | |
</pluginRepository> | |
</pluginRepositories> | |
<dependencies> | |
<dependency> | |
<groupId>junit</groupId> | |
<artifactId>junit</artifactId> | |
<version>4.13.1</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.apache.xmlgraphics</groupId> | |
<artifactId>batik-svggen</artifactId> | |
<version>1.10</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.apache.xmlgraphics</groupId> | |
<artifactId>batik-awt-util</artifactId> | |
<version>1.10</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.apache.xmlgraphics</groupId> | |
<artifactId>batik-i18n</artifactId> | |
<version>1.10</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.apache.xmlgraphics</groupId> | |
<artifactId>batik-dom</artifactId> | |
<version>1.10</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>commons-cli</groupId> | |
<artifactId>commons-cli</artifactId> | |
<version>1.4</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.apache.commons</groupId> | |
<artifactId>commons-math3</artifactId> | |
<version>3.6.1</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.apache.commons</groupId> | |
<artifactId>commons-compress</artifactId> | |
<version>1.19</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.freehep</groupId> | |
<artifactId>freehep-graphicsio-pdf</artifactId> | |
<version>2.4</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.freehep</groupId> | |
<artifactId>freehep-export</artifactId> | |
<version>2.1.3</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.freehep</groupId> | |
<artifactId>freehep-graphics2d</artifactId> | |
<version>2.4</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.freehep</groupId> | |
<artifactId>freehep-io</artifactId> | |
<version>2.2.2</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.freehep</groupId> | |
<artifactId>freehep-swing</artifactId> | |
<version>2.0.11</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.freehep</groupId> | |
<artifactId>freehep-util</artifactId> | |
<version>2.1.2</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.freehep</groupId> | |
<artifactId>freehep-graphicsio-svg</artifactId> | |
<version>2.4</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.freehep</groupId> | |
<artifactId>freehep-xml</artifactId> | |
<version>2.1.10</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.freehep</groupId> | |
<artifactId>freehep-graphicsio</artifactId> | |
<version>2.4</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>com.itextpdf</groupId> | |
<artifactId>itextpdf</artifactId> | |
<version>5.5.13</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>com.yuvimasory</groupId> | |
<artifactId>orange-extensions</artifactId> | |
<version>1.3.0</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>org.mockito</groupId> | |
<artifactId>mockito-core</artifactId> | |
<version>2.23.0</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<groupId>gov.nist.math</groupId> | |
<artifactId>jama</artifactId> | |
<version>1.0.3</version> | |
<optional>true</optional> | |
</dependency> | |
<dependency> | |
<!-- jgit is used to extract version information from the | |
git repository without introducing an external dependency on | |
the git executable. --> | |
<groupId>org.eclipse.jgit</groupId> | |
<artifactId>org.eclipse.jgit</artifactId> | |
<version>5.7.0.202003110725-r</version> | |
</dependency> | |
</dependencies> | |
<build> | |
<plugins> | |
<plugin> | |
<groupId>org.codehaus.mojo</groupId> | |
<artifactId>properties-maven-plugin</artifactId> | |
<version>1.0.0</version> | |
<executions> | |
<execution> | |
<id>read-release-properties</id> | |
<phase>initialize</phase> | |
<goals> | |
<goal>read-project-properties</goal> | |
</goals> | |
<configuration> | |
<files> | |
<file>${basedir}/release.properties</file> | |
</files> | |
</configuration> | |
</execution> | |
<execution> | |
<id>write-properties-file-1</id> | |
<phase>generate-resources</phase> | |
<goals> | |
<goal>write-project-properties</goal> | |
</goals> | |
<configuration> | |
<outputFile> | |
${project.build.outputDirectory}/app.properties | |
</outputFile> | |
</configuration> | |
</execution> | |
<execution> | |
<id>write-properties-file-2</id> | |
<phase>generate-resources</phase> | |
<goals> | |
<goal>write-project-properties</goal> | |
</goals> | |
<configuration> | |
<outputFile> | |
${project.build.outputDirectory}/net/talvi/puffinplot/build.properties | |
</outputFile> | |
</configuration> | |
</execution> | |
</executions> | |
</plugin> | |
<plugin> | |
<!-- A plugin which fetches ruby gems and installs them | |
in the Maven target directory. --> | |
<groupId>de.saumya.mojo</groupId> | |
<artifactId>gem-maven-plugin</artifactId> | |
<version>1.1.8</version> | |
<executions> | |
<execution> | |
<id>install-gems-for-asciidoctor</id> | |
<goals> | |
<!-- We use the "sets" goal to explicitly specify versions | |
of all needed gems (including direct and transitive | |
dependencies), to avoid problems with automatic | |
dependency resolution for gems in Maven as described in | |
https://github.com/asciidoctor/asciidoctor-maven-examples/issues/41#issuecomment-171810511 | |
. Dependencies and their versions were determined by | |
installing asciidoctor-bibtex using the standard gem | |
tool and thereafter examining the contents of ~/.gem. | |
--> | |
<goal>sets</goal> | |
</goals> | |
<configuration> | |
<gems> | |
<asciidoctor-bibtex>0.7.1</asciidoctor-bibtex> | |
<bibtex-ruby>4.4.7</bibtex-ruby> | |
<citeproc>1.0.10</citeproc> | |
<citeproc-ruby>1.1.12</citeproc-ruby> | |
<csl>1.5.1</csl> | |
<csl-styles>1.0.1.10</csl-styles> | |
<latex-decode>0.3.1</latex-decode> | |
<namae>1.0.1</namae> | |
</gems> | |
</configuration> | |
</execution> | |
<execution> | |
<id>run-manual-version-script</id> | |
<phase>generate-resources</phase> | |
<goals> | |
<goal>exec</goal> | |
</goals> | |
<configuration> | |
<file>${project.basedir}/src/main/resources/ruby-build-scripts/generate-manual-version-info.rb</file> | |
<execArgLines> | |
<execArgLine>${project.basedir}</execArgLine> | |
</execArgLines> | |
<outputFile>${project.basedir}/src/main/asciidoc/version.adoc</outputFile> | |
</configuration> | |
</execution> | |
<execution> | |
<id>run-commit-properties-script</id> | |
<phase>generate-resources</phase> | |
<goals> | |
<goal>exec</goal> | |
</goals> | |
<configuration> | |
<file>${project.basedir}/src/main/resources/ruby-build-scripts/generate-commit-properties.rb</file> | |
<execArgLines> | |
<execArgLine>${project.basedir}</execArgLine> | |
<execArgLine>${project.build.directory}/classes/net/talvi/puffinplot/build.properties</execArgLine> | |
</execArgLines> | |
</configuration> | |
</execution> | |
</executions> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-javadoc-plugin</artifactId> | |
<version>3.1.1</version> | |
<executions> | |
<execution> | |
<phase>package</phase> | |
<goals> | |
<goal>javadoc</goal> | |
</goals> | |
</execution> | |
</executions> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-shade-plugin</artifactId> | |
<version>3.2.4</version> | |
<executions> | |
<execution> | |
<phase>package</phase> | |
<goals> | |
<goal>shade</goal> | |
</goals> | |
<configuration> | |
<transformers> | |
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> | |
<mainClass>net.talvi.puffinplot.Main</mainClass> | |
</transformer> | |
</transformers> | |
<minimizeJar>true</minimizeJar> | |
<createDependencyReducedPom>false</createDependencyReducedPom> | |
<artifactSet> | |
<excludes> | |
<!-- Don't include any ruby gems in the jar, since they're | |
only needed at build time. --> | |
<exclude>rubygems:*</exclude> | |
</excludes> | |
</artifactSet> | |
<filters> | |
<filter> | |
<!-- gem-maven-plugin automatically adds any executed ruby | |
scripts to the project's resources. As far as I can | |
tell, this can't be disabled, but we can at least | |
exclude them from the jar. | |
--> | |
<artifact>net.talvi.puffinplot:puffinplot</artifact> | |
<excludes> | |
<exclude>ruby-build-scripts/**</exclude> | |
</excludes> | |
</filter> | |
<filter> | |
<!-- Remove signatures from component to avoid an "Invalid | |
signature file digest for Manifest main attributes" | |
error due to the signature from a component jar not | |
matching the uber-jar. | |
--> | |
<artifact>*:*</artifact> | |
<excludeDefaults>false</excludeDefaults> | |
<excludes> | |
<exclude>META-INF/*.SF</exclude> | |
<exclude>META-INF/*.DSA</exclude> | |
<exclude>META-INF/*.RSA</exclude> | |
</excludes> | |
<includes> | |
<include>org/apache/xalan/res/XSLTErrorResources</include> | |
<include>org/apache/xml/serializer/ToXMLStream</include> | |
</includes> | |
</filter> | |
</filters> | |
</configuration> | |
</execution> | |
</executions> | |
</plugin> | |
<plugin> | |
<groupId>sh.tak.appbundler</groupId> | |
<artifactId>appbundle-maven-plugin</artifactId> | |
<!-- Versions prior to 1.2.1 don't support excludeDependencies. | |
--> | |
<version>1.2.1-SNAPSHOT</version> | |
<configuration> | |
<mainClass>net.talvi.puffinplot.Main</mainClass> | |
<generateDiskImageFile>false</generateDiskImageFile> | |
<bundleName>PuffinPlot</bundleName> | |
<excludeDependencies>true</excludeDependencies> | |
<!-- Icons path must be relative to project base directory. --> | |
<iconFile>src/main/resources/net/talvi/puffinplot/icons/PuffinPlot.icns</iconFile> | |
<jvmOptions> | |
<jvmOption>-Dapple.awt.application.name=PuffinPlot</jvmOption> | |
</jvmOptions> | |
<dictionaryFile>net/talvi/puffinplot/Info.plist.template</dictionaryFile> | |
<jvmVersion>1.8+</jvmVersion> | |
</configuration> | |
<executions> | |
<execution> | |
<phase>package</phase> | |
<goals> | |
<goal>bundle</goal> | |
</goals> | |
</execution> | |
</executions> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-assembly-plugin</artifactId> | |
<version>2.2.1</version> | |
<configuration> | |
<descriptor>src/assembly/bin.xml</descriptor> | |
<finalname>puffinplot-${project.version}</finalname> | |
</configuration> | |
<executions> | |
<execution> | |
<id>make-assembly</id> <!-- for inheritance merges --> | |
<phase>package</phase> | |
<goals> | |
<goal>single</goal> | |
</goals> | |
</execution> | |
</executions> | |
</plugin> | |
<plugin> | |
<groupId>org.jacoco</groupId> | |
<artifactId>jacoco-maven-plugin</artifactId> | |
<version>0.8.5</version> | |
<executions> | |
<execution> | |
<goals> | |
<goal>prepare-agent</goal> | |
</goals> | |
</execution> | |
<execution> | |
<id>report</id> | |
<phase>test</phase> | |
<goals> | |
<goal>report</goal> | |
</goals> | |
</execution> | |
</executions> | |
</plugin> | |
<plugin> | |
<groupId>org.asciidoctor</groupId> | |
<artifactId>asciidoctor-maven-plugin</artifactId> | |
<version>${asciidoctor.maven.plugin.version}</version> | |
<dependencies> | |
<dependency> | |
<groupId>org.asciidoctor</groupId> | |
<artifactId>asciidoctorj-pdf</artifactId> | |
<version>${asciidoctorj.pdf.version}</version> | |
</dependency> | |
<!-- Comment this section to use the default jruby artifact provided by the plugin --> | |
<dependency> | |
<groupId>org.jruby</groupId> | |
<artifactId>jruby-complete</artifactId> | |
<version>${jruby.version}</version> | |
</dependency> | |
<!-- Comment this section to use the default AsciidoctorJ artifact provided by the plugin --> | |
<dependency> | |
<groupId>org.asciidoctor</groupId> | |
<artifactId>asciidoctorj</artifactId> | |
<version>${asciidoctorj.version}</version> | |
</dependency> | |
</dependencies> | |
<configuration> | |
<sourceDirectory>src/main/asciidoc</sourceDirectory> | |
<!-- Attributes common to all output formats --> | |
<attributes> | |
<sourcedir>${project.build.sourceDirectory}</sourcedir> | |
</attributes> | |
<gemPath>${project.build.directory}/rubygems</gemPath> | |
<requires>asciidoctor-bibtex</requires> | |
<sourceDocumentName>manual.adoc</sourceDocumentName> | |
<resources> | |
<!-- We don't want to copy any resources. Omitting the resources | |
section entirely copies all the resources in the asciidoc | |
source directory. Including a resources section with an | |
empty resources subsection omits the asciidoc resources but | |
copies the contents of src/main/java (!). So we need this | |
resources section which explicitly excludes src/main/java. | |
--> | |
<resource> | |
<directory>${project.basedir}/src/main/java</directory> | |
<excludes> | |
<exclude>**/*</exclude> | |
</excludes> | |
</resource> | |
</resources> | |
</configuration> | |
<executions> | |
<execution> | |
<id>generate-asciidoc-manual-pdf</id> | |
<phase>prepare-package</phase> | |
<goals> | |
<goal>process-asciidoc</goal> | |
</goals> | |
<configuration> | |
<backend>pdf</backend> | |
<outputDirectory>${project.build.directory}/manual-pdf</outputDirectory> | |
<sourceHighlighter>coderay</sourceHighlighter> | |
<!-- Use `book` docType to enable title page generation --> | |
<doctype>book</doctype> | |
<attributes> | |
<pdf-stylesdir>${project.basedir}/src/main/asciidoc/theme</pdf-stylesdir> | |
<pdf-style>custom</pdf-style> | |
<icons>font</icons> | |
<pagenums/> | |
<toc/> | |
<idprefix/> | |
<idseparator>-</idseparator> | |
</attributes> | |
</configuration> | |
</execution> | |
<execution> | |
<id>generate-asciidoc-manual-html</id> | |
<phase>prepare-package</phase> | |
<goals> | |
<goal>process-asciidoc</goal> | |
</goals> | |
<configuration> | |
<backend>html5</backend> | |
<outputDirectory>${project.build.directory}/manual-html</outputDirectory> | |
<sourceHighlighter>coderay</sourceHighlighter> | |
<embedAssets>true</embedAssets> | |
<attributes> | |
<imagesdir>images</imagesdir> | |
<toc>left</toc> | |
<icons>font</icons> | |
<sectanchors>true</sectanchors> | |
<!-- set the idprefix to blank --> | |
<idprefix/> | |
<idseparator>-</idseparator> | |
<docinfo1>true</docinfo1> | |
</attributes> | |
</configuration> | |
</execution> | |
</executions> | |
</plugin> | |
</plugins> | |
<pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) --> | |
<plugins> | |
<!-- clean lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#clean_Lifecycle --> | |
<plugin> | |
<artifactId>maven-clean-plugin</artifactId> | |
<version>3.1.0</version> | |
</plugin> | |
<!-- default lifecycle, jar packaging: see https://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_jar_packaging --> | |
<plugin> | |
<artifactId>maven-resources-plugin</artifactId> | |
<version>3.0.2</version> | |
</plugin> | |
<plugin> | |
<artifactId>maven-compiler-plugin</artifactId> | |
<version>3.8.0</version> | |
</plugin> | |
<plugin> | |
<artifactId>maven-surefire-plugin</artifactId> | |
<version>2.22.1</version> | |
</plugin> | |
<plugin> | |
<artifactId>maven-jar-plugin</artifactId> | |
<version>3.0.2</version> | |
</plugin> | |
<plugin> | |
<artifactId>maven-install-plugin</artifactId> | |
<version>2.5.2</version> | |
</plugin> | |
<plugin> | |
<artifactId>maven-deploy-plugin</artifactId> | |
<version>2.8.2</version> | |
</plugin> | |
<!-- site lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#site_Lifecycle --> | |
<plugin> | |
<artifactId>maven-site-plugin</artifactId> | |
<version>3.7.1</version> | |
</plugin> | |
<plugin> | |
<artifactId>maven-project-info-reports-plugin</artifactId> | |
<version>3.0.0</version> | |
</plugin> | |
</plugins> | |
</pluginManagement> | |
</build> | |
</project> |