mirror of
https://github.com/PAMGuard/PAMGuard.git
synced 2024-11-25 00:22:27 +00:00
1074 lines
34 KiB
XML
1074 lines
34 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/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<groupId>org.pamguard</groupId>
|
|
<artifactId>Pamguard</artifactId>
|
|
<version>2.02.14a</version>
|
|
<name>Pamguard</name>
|
|
<description>Pamguard using Maven to control dependencies</description>
|
|
<url>www.pamguard.org</url>
|
|
<organization>
|
|
<name>Sea Mammal Research Unit, University of St. Andrews</name>
|
|
<url>http://www.smru.st-andrews.ac.uk</url>
|
|
</organization>
|
|
|
|
|
|
<properties>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<javafx.version>21</javafx.version>
|
|
<maven.compiler.source>11</maven.compiler.source>
|
|
<maven.compiler.target>11</maven.compiler.target>
|
|
<!-- Tethys version control -->
|
|
<jaxb.runtime.version>2.4.0-b180830.0438</jaxb.runtime.version>
|
|
<jaxb.api.version>2.4.0-b180830.0359</jaxb.api.version>
|
|
<jaxb.xjc.version>2.4.0-b180830.0438</jaxb.xjc.version>
|
|
<mockito.version>1.10.19</mockito.version>
|
|
<powermock.version>1.6.6</powermock.version>
|
|
</properties>
|
|
|
|
<build>
|
|
<!-- Define where the source and test directories are -->
|
|
<sourceDirectory>${basedir}/src</sourceDirectory>
|
|
<testSourceDirectory>${basedir}/src/test</testSourceDirectory> <!-- where the Unit tets are located -->
|
|
<resources>
|
|
<resource>
|
|
<directory>src</directory>
|
|
<excludes>
|
|
<exclude>META-INF/*.SF,META-INF/*.DSA,META-INF/*.RSA</exclude>
|
|
<exclude>**/*.java</exclude> <!-- don't include any source files -->
|
|
<exclude>jars/*.*</exclude> <!-- don't include files in the jars folder -->
|
|
</excludes>
|
|
</resource>
|
|
</resources>
|
|
|
|
|
|
<plugins>
|
|
<!-- original maven compiler definition - uses the JRE's javac compiler, not the one Eclipse uses
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>3.8.0</version>
|
|
<configuration>
|
|
<release>13</release>
|
|
</configuration>
|
|
-->
|
|
|
|
<!-- attempt to use the Eclipse JDT compiler, so that the errors match when building
|
|
https://stackoverflow.com/questions/38070326/java-generics-compiler-error-not-shown-in-eclipse
|
|
https://wiki.eclipse.org/JDT/FAQ#Can_I_use_JDT_outside_Eclipse_to_compile_Java_code.3F
|
|
https://wiki.eclipse.org/Tycho/FAQ#Can_I_use_the_Tycho_compiler_support_in_non-OSGi_projects.2C_too.3F
|
|
-->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>3.12.1</version>
|
|
<configuration>
|
|
<!-- set compiler to use Java version 11 API https://docs.oracle.com/javase/9/tools/javac.htm#JSWOR627 -->
|
|
<release>21</release>
|
|
<compilerId>jdt</compilerId>
|
|
</configuration>
|
|
<dependencies>
|
|
<!-- https://mvnrepository.com/artifact/org.eclipse.tycho/tycho-compiler-jdt -->
|
|
<dependency>
|
|
<groupId>org.eclipse.tycho</groupId>
|
|
<artifactId>tycho-compiler-jdt</artifactId>
|
|
<version>1.5.1</version>
|
|
</dependency>
|
|
</dependencies>
|
|
</plugin>
|
|
|
|
<!-- Set up javafx properly. -->
|
|
<plugin>
|
|
<groupId>org.openjfx</groupId>
|
|
<artifactId>javafx-maven-plugin</artifactId>
|
|
<version>0.0.8</version>
|
|
</plugin>
|
|
|
|
<!-- Maven Shade plugin - for creating the uberjar / fatjar -->
|
|
<!-- see http://maven.apache.org/plugins/maven-shade-plugin/index.html for details -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-shade-plugin</artifactId>
|
|
<version>3.2.1</version>
|
|
<configuration>
|
|
<transformers>
|
|
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" />
|
|
</transformers>
|
|
<filters>
|
|
<!-- Moved these filters up to here from where they were int <executions><execution><configurtion>
|
|
based on advice at https://stackoverflow.com/questions/34738653/maven-shade-plugin-does-not-exclude-the-manifest-signature-files
|
|
and the are now working -->
|
|
<filter>
|
|
<artifact>*:*</artifact>
|
|
<excludes>
|
|
<exclude>META-INF/*.SF</exclude> <!-- get rid of manifests from library jars - also done in orig ant build file -->
|
|
<exclude>META-INF/*.DSA</exclude>
|
|
<exclude>META-INF/*.RSA</exclude>
|
|
<exclude>test/resources/**</exclude> <!-- get rid of deep learning moduels and wav files used for unit tests -->
|
|
</excludes>
|
|
</filter>
|
|
</filters>
|
|
</configuration>
|
|
|
|
<executions>
|
|
<execution>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>shade</goal>
|
|
</goals>
|
|
<configuration>
|
|
<transformers>
|
|
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
|
|
<manifestEntries>
|
|
<Main-Class>pamguard.Pamguard</Main-Class>
|
|
<Class-Path>.</Class-Path> <!-- this is from the orig ant build file -->
|
|
<SplashScreen-Image>Resources/pgBlankSplash.png</SplashScreen-Image> <!-- this is from the orig ant build file -->
|
|
</manifestEntries>
|
|
</transformer>
|
|
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" />
|
|
</transformers>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
|
|
<!-- The Maven-JDEPS plugin, to analyze necessary JDK dependencies. See
|
|
this site for details: https://maven.apache.org/plugins/maven-jdeps-plugin/index.html -->
|
|
<plugin>
|
|
<groupId>com.github.marschall</groupId>
|
|
<artifactId>jdeps-maven-plugin</artifactId>
|
|
<version>0.5.1</version>
|
|
</plugin>
|
|
|
|
<!-- The Maven dependency plugin, which can copy all dependencies into a temp folder for jdeps analysis -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<version>3.1.1</version>
|
|
<executions>
|
|
<execution>
|
|
<id>copy-dependencies</id>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>copy-dependencies</goal>
|
|
</goals>
|
|
<configuration>
|
|
<outputDirectory>${project.build.directory}/tempDependencies</outputDirectory>
|
|
<overWriteReleases>false</overWriteReleases>
|
|
<overWriteSnapshots>false</overWriteSnapshots>
|
|
<overWriteIfNewer>true</overWriteIfNewer>
|
|
</configuration>
|
|
</execution>
|
|
<!-- this deletes all the dependencies in the local repository and downloads them again.
|
|
Run a Maven > Update after doing this in order to properly reset the dependencies. Also, you
|
|
will need to add the 3 jar files (x3, JasioHost and jave) back into the local repository after
|
|
running this command -->
|
|
|
|
<!-- I'm not sure why, but every time I try to run the shade:shade build to create a
|
|
fatjar it first runs this, which deletes all of the dependencies and completely fails.
|
|
I think it has something to do with the lifecycle mapping, but that's beyond my Maven
|
|
abilities right now.
|
|
I can't even remember why I added this in the first place, so I'm going to comment
|
|
it out
|
|
<execution>
|
|
<id>purge-local-dependencies</id>
|
|
<phase>process-sources</phase>
|
|
<goals>
|
|
<goal>purge-local-repository</goal>
|
|
</goals>
|
|
<configuration>
|
|
</configuration>
|
|
</execution>
|
|
-->
|
|
</executions>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>3.5.1</version>
|
|
<configuration>
|
|
<reuseForks>false</reuseForks>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
|
|
<!-- Plugin which creates a .dmg file for MacOS.
|
|
<plugin>
|
|
<groupId>de.perdian.maven.plugins</groupId>
|
|
<artifactId>macosappbundler-maven-plugin</artifactId>
|
|
<version>1.21.1</version>
|
|
<configuration>
|
|
<plist>
|
|
<JVMMainClassName>pamguard.Pamguard</JVMMainClassName>
|
|
<CFBundleIconFile>src/Resources/PamguardIcon2.icns</CFBundleIconFile>
|
|
<CFBundleDisplayName>PAMGuard</CFBundleDisplayName>
|
|
<CFBundleDevelopmentRegion>English</CFBundleDevelopmentRegion>
|
|
<CFBundleURLTypes>
|
|
<string>msa</string>
|
|
</CFBundleURLTypes>
|
|
<JVMVersion>21+</JVMVersion>
|
|
<JVMArguments>
|
|
<string>-v</string>
|
|
</JVMArguments>
|
|
</plist>
|
|
<dmg>
|
|
<generate>true</generate>
|
|
<additionalResources>
|
|
<additionalResource>
|
|
<directory>src/target/macos/</directory>
|
|
</additionalResource>
|
|
</additionalResources>
|
|
</dmg>
|
|
<jdk>
|
|
<include>false</include>
|
|
<location>/Library/Java/JavaVirtualMachines/amazon-corretto-21.jdk</location>
|
|
</jdk>
|
|
<codesign>
|
|
<identity>3rd Party Mac Developer Application: PAMGuard</identity>
|
|
</codesign>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>bundle</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</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-dependency-plugin
|
|
</artifactId>
|
|
<versionRange>
|
|
[3.1.1,)
|
|
</versionRange>
|
|
<goals>
|
|
<goal>
|
|
purge-local-repository
|
|
</goal>
|
|
</goals>
|
|
</pluginExecutionFilter>
|
|
<action>
|
|
<ignore></ignore>
|
|
</action>
|
|
</pluginExecution>
|
|
</pluginExecutions>
|
|
</lifecycleMappingMetadata>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</pluginManagement>
|
|
</build>
|
|
|
|
<reporting>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>com.github.marschall</groupId>
|
|
<artifactId>jdeps-maven-plugin</artifactId>
|
|
<version>0.5.1</version>
|
|
</plugin>
|
|
</plugins>
|
|
</reporting>
|
|
|
|
|
|
<!-- ************************* Extra Repositories ************************************* -->
|
|
<repositories>
|
|
<!-- Project repo to hold the custom jar files that are not available in Maven. Do
|
|
this so that we don't have to do the extra step of manually installing jar files in the local repo -->
|
|
<repository>
|
|
<id>repo</id>
|
|
<releases>
|
|
<enabled>true</enabled>
|
|
<checksumPolicy>ignore</checksumPolicy>
|
|
</releases>
|
|
<snapshots>
|
|
<enabled>false</enabled>
|
|
</snapshots>
|
|
<url>file://${project.basedir}/repo</url>
|
|
</repository>
|
|
|
|
<!-- Repo for netCDF -->
|
|
<repository>
|
|
<snapshots>
|
|
<enabled>false</enabled>
|
|
</snapshots>
|
|
<id>unidata-all</id>
|
|
<name>Unidata netCDF</name>
|
|
<url>https://artifacts.unidata.ucar.edu/repository/unidata-all/</url>
|
|
</repository>
|
|
|
|
<!--
|
|
<repository>
|
|
<snapshots>
|
|
<enabled>false</enabled>
|
|
</snapshots>
|
|
<id>geomajas</id>
|
|
<name>geomajas</name>
|
|
<url>http://maven.geomajas.org/</url>
|
|
</repository>-->
|
|
|
|
<!-- Repo for Renjin Script Engine -->
|
|
<repository>
|
|
<id>bedatadriven</id>
|
|
<name>bedatadriven public repo</name>
|
|
<url>https://nexus.bedatadriven.com/content/groups/public/</url>
|
|
</repository>
|
|
|
|
<repository>
|
|
<id>central</id>
|
|
<url>https://repo1.maven.org/maven2</url>
|
|
</repository>
|
|
|
|
</repositories>
|
|
|
|
|
|
<!-- ************************* Dependencies ************************************* -->
|
|
<dependencyManagement>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.junit</groupId>
|
|
<artifactId>junit-bom</artifactId>
|
|
<version>5.11.3</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
</dependencyManagement>
|
|
<dependencies>
|
|
|
|
<!--jpam project - utilities -->
|
|
<dependency>
|
|
<groupId>io.github.macster110</groupId>
|
|
<artifactId>jpamutils</artifactId>
|
|
<version>0.0.59d</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<!-- com.github.psambit9791:wavfile:jar:0.1 pulls in various junit dependencies which breaks our own testing -->
|
|
<groupId>org.junit.platform</groupId>
|
|
<artifactId>junit-platform-surefire-provider</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<!--jpam project - Deep learning java library -->
|
|
<dependency>
|
|
<groupId>io.github.macster110</groupId>
|
|
<artifactId>jdl4pam</artifactId>
|
|
<version>0.0.99d</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/gov.nist.math/jama -->
|
|
<dependency>
|
|
<groupId>gov.nist.math</groupId>
|
|
<artifactId>jama</artifactId>
|
|
<version>1.0.3</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.openjfx/javafx-controls -->
|
|
<!-- IMPORTANT - IF MAVEN IS NOT DOWNLOADING THE JAVAFX FILES AND
|
|
INSTEAD THROWING AN ERROR, IT MIGHT BE BECAUSE THERE IS AN
|
|
INTERFERENCE WITH JAMIE'S REPOSITORY. I'm not sure why this happens,
|
|
but it does. To fix, comment out the repository (in
|
|
the <repositories> section above, let Maven download the JavaFX
|
|
files, and then uncomment the repository again. -->
|
|
<dependency>
|
|
<groupId>org.openjfx</groupId>
|
|
<artifactId>javafx-controls</artifactId>
|
|
<version>${javafx.version}</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.openjfx/javafx-swing -->
|
|
<!-- IMPORTANT - IF MAVEN IS NOT DOWNLOADING THE JAVAFX FILES AND
|
|
INSTEAD THROWING AN ERROR, IT MIGHT BE BECAUSE THERE IS AN
|
|
INTERFERENCE WITH JAMIE'S REPOSITORY. I'm not sure why this happens,
|
|
but it does. To fix, comment out the repository (in
|
|
the <repositories> section above, let Maven download the JavaFX
|
|
files, and then uncomment the repository again. -->
|
|
<dependency>
|
|
<groupId>org.openjfx</groupId>
|
|
<artifactId>javafx-swing</artifactId>
|
|
<version>${javafx.version}</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.openjfx/javafx-media -->
|
|
<!-- IMPORTANT - IF MAVEN IS NOT DOWNLOADING THE JAVAFX FILES AND
|
|
INSTEAD THROWING AN ERROR, IT MIGHT BE BECAUSE THERE IS AN
|
|
INTERFERENCE WITH JAMIE'S REPOSITORY. I'm not sure why this happens,
|
|
but it does. To fix, comment out the repository (in
|
|
the <repositories> section above, let Maven download the JavaFX
|
|
files, and then uncomment the repository again. -->
|
|
<dependency>
|
|
<groupId>org.openjfx</groupId>
|
|
<artifactId>javafx-media</artifactId>
|
|
<version>${javafx.version}</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.openjfx/javafx-web -->
|
|
<!-- IMPORTANT - IF MAVEN IS NOT DOWNLOADING THE JAVAFX FILES AND
|
|
INSTEAD THROWING AN ERROR, IT MIGHT BE BECAUSE THERE IS AN
|
|
INTERFERENCE WITH JAMIE'S REPOSITORY. I'm not sure why this happens,
|
|
but it does. To fix, comment out the repository (in
|
|
the <repositories> section above, let Maven download the JavaFX
|
|
files, and then uncomment the repository again. -->
|
|
<dependency>
|
|
<groupId>org.openjfx</groupId>
|
|
<artifactId>javafx-web</artifactId>
|
|
<version>${javafx.version}</version>
|
|
</dependency>
|
|
|
|
<!-- Swing theme for MacOS -->
|
|
<dependency>
|
|
<groupId>com.formdev</groupId>
|
|
<artifactId>flatlaf</artifactId>
|
|
<version>3.5.1</version>
|
|
</dependency>
|
|
|
|
<!-- Decorates JavaFX components with error icons if inputs are incorrect-->
|
|
<dependency>
|
|
<groupId>net.synedra</groupId>
|
|
<artifactId>validatorfx</artifactId>
|
|
<version>0.4.2</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-compress -->
|
|
<dependency>
|
|
<groupId>org.apache.commons</groupId>
|
|
<artifactId>commons-compress</artifactId>
|
|
<version>1.19</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-csv -->
|
|
<dependency>
|
|
<groupId>org.apache.commons</groupId>
|
|
<artifactId>commons-csv</artifactId>
|
|
<version>1.7</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/commons-io/commons-io -->
|
|
<dependency>
|
|
<groupId>commons-io</groupId>
|
|
<artifactId>commons-io</artifactId>
|
|
<version>2.6</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
|
|
<dependency>
|
|
<groupId>org.apache.commons</groupId>
|
|
<artifactId>commons-lang3</artifactId>
|
|
<version>3.9</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-math3 -->
|
|
<dependency>
|
|
<groupId>org.apache.commons</groupId>
|
|
<artifactId>commons-math3</artifactId>
|
|
<version>3.6.1</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-math -->
|
|
<dependency>
|
|
<groupId>org.apache.commons</groupId>
|
|
<artifactId>commons-math</artifactId>
|
|
<version>2.2</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/commons-net/commons-net -->
|
|
<dependency>
|
|
<groupId>commons-net</groupId>
|
|
<artifactId>commons-net</artifactId>
|
|
<version>3.6</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.controlsfx/controlsfx -->
|
|
<dependency>
|
|
<groupId>org.controlsfx</groupId>
|
|
<artifactId>controlsfx</artifactId>
|
|
<version>11.2.0</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.openjfx</groupId>
|
|
<artifactId>javafx-base</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>org.openjfx</groupId>
|
|
<artifactId>javafx-controls</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>org.openjfx</groupId>
|
|
<artifactId>javafx-graphics</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>org.openjfx</groupId>
|
|
<artifactId>javafx-media</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>org.openjfx</groupId>
|
|
<artifactId>javafx-web</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<!-- https://search.maven.org/artifact/org.kordamp.ikonli/ikonli-javafx/12.2.0/jar -->
|
|
<!-- Icon symbol pack to replace FontAwesome. This is the core library, and the
|
|
actual symbol packs need to be added separately (see below) -->
|
|
<dependency>
|
|
<groupId>org.kordamp.ikonli</groupId>
|
|
<artifactId>ikonli-javafx</artifactId>
|
|
<version>12.3.1</version>
|
|
</dependency>
|
|
|
|
<!-- Icon symbol pack for swing icons . -->
|
|
<dependency>
|
|
<groupId>org.kordamp.ikonli</groupId>
|
|
<artifactId>ikonli-swing</artifactId>
|
|
<version>12.3.1</version>
|
|
</dependency>
|
|
|
|
<!-- Ikonli MaterialDesign2 (Latest) font pack https://kordamp.org/ikonli/cheat-sheet-materialdesign2.html -->
|
|
<dependency>
|
|
<groupId>org.kordamp.ikonli</groupId>
|
|
<artifactId>ikonli-materialdesign2-pack</artifactId>
|
|
<version>12.3.1</version>
|
|
</dependency>
|
|
|
|
<!-- Ikonli File Icons (Latest) font pack https://kordamp.org/ikonli/cheat-sheet-materialdesign2.html -->
|
|
<dependency>
|
|
<groupId>org.kordamp.ikonli</groupId>
|
|
<artifactId>ikonli-fileicons-pack</artifactId>
|
|
<version>12.3.1</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/net.sf.geographiclib/GeographicLib-Java
|
|
Used in the video range module-->
|
|
<dependency>
|
|
<groupId>net.sf.geographiclib</groupId>
|
|
<artifactId>GeographicLib-Java</artifactId>
|
|
<version>1.50</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.jogamp.gluegen/gluegen
|
|
<dependency>
|
|
<groupId>org.jogamp.gluegen</groupId>
|
|
<artifactId>gluegen-rt-main</artifactId>
|
|
<version>2.3.2</version>
|
|
</dependency>-->
|
|
|
|
|
|
<!-- https://mvnrepository.com/artifact/com.healthmarketscience.jackcess/jackcess
|
|
<dependency>
|
|
<groupId>com.healthmarketscience.jackcess</groupId>
|
|
<artifactId>jackcess</artifactId>
|
|
<version>3.0.1</version>
|
|
</dependency>-->
|
|
|
|
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
|
|
<dependency>
|
|
<groupId>com.fasterxml.jackson.core</groupId>
|
|
<artifactId>jackson-databind</artifactId>
|
|
<version>2.10.1</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.jogamp.jogl/jogl-all-main
|
|
<dependency>
|
|
<groupId>org.jogamp.jogl</groupId>
|
|
<artifactId>jogl-all-main</artifactId>
|
|
<version>2.3.2</version>
|
|
</dependency>-->
|
|
|
|
<!-- NOT SURE IF WE NEED THE JAXB LIBRARIES HERE - NO ERRORS WHEN REMOVED
|
|
<dependency>
|
|
<groupId>javax.xml.bind</groupId>
|
|
<artifactId>jaxb-api</artifactId>
|
|
<version>2.3.1</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.glassfish.jaxb</groupId>
|
|
<artifactId>jaxb-core</artifactId>
|
|
<version>2.3.0.1</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.sun.xml.bind</groupId>
|
|
<artifactId>jaxb-impl</artifactId>
|
|
<version>2.3.2</version>
|
|
</dependency>
|
|
-->
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.jflac/jflac-codec -->
|
|
<dependency>
|
|
<groupId>org.jflac</groupId>
|
|
<artifactId>jflac-codec</artifactId>
|
|
<version>1.5.2</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/javax.help/javahelp -->
|
|
<dependency>
|
|
<groupId>javax.help</groupId>
|
|
<artifactId>javahelp</artifactId>
|
|
<version>2.0.05</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/net.java.dev.jna/jna -->
|
|
<dependency>
|
|
<groupId>net.java.dev.jna</groupId>
|
|
<artifactId>jna</artifactId>
|
|
<version>5.5.0</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/net.java.dev.jna/jna-platform -->
|
|
<dependency>
|
|
<groupId>net.java.dev.jna</groupId>
|
|
<artifactId>jna-platform</artifactId>
|
|
<version>5.5.0</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/com.jcraft/jsch -->
|
|
<dependency>
|
|
<groupId>com.jcraft</groupId>
|
|
<artifactId>jsch</artifactId>
|
|
<version>0.1.55</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/com.fazecast/jSerialComm -->
|
|
<dependency>
|
|
<groupId>com.fazecast</groupId>
|
|
<artifactId>jSerialComm</artifactId>
|
|
<version>2.11.0</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/edu.emory.mathcs/JTransforms -->
|
|
<dependency>
|
|
<groupId>edu.emory.mathcs</groupId>
|
|
<artifactId>JTransforms</artifactId>
|
|
<version>2.4</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/com.sun.mail/javax.mail -->
|
|
<dependency>
|
|
<groupId>com.sun.mail</groupId>
|
|
<artifactId>javax.mail</artifactId>
|
|
<version>1.6.2</version>
|
|
</dependency>
|
|
|
|
|
|
<!-- https://mvnrepository.com/artifact/com.drewnoakes/metadata-extractor -->
|
|
<dependency>
|
|
<groupId>com.drewnoakes</groupId>
|
|
<artifactId>metadata-extractor</artifactId>
|
|
<version>2.12.0</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
|
|
<dependency>
|
|
<groupId>mysql</groupId>
|
|
<artifactId>mysql-connector-java</artifactId>
|
|
<version>8.0.18</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/com.google.protobuf/protobuf-java -->
|
|
<!-- this is needed so that tensorflow models run properly (used in Deep Learning plugin) -->
|
|
<!-- NOTE it is important this is included before edu.ucar.netcdfAll so
|
|
that this version is used instead of the internal version - exclusions do
|
|
not seem to work otherwise -->
|
|
<dependency>
|
|
<groupId>com.google.protobuf</groupId>
|
|
<artifactId>protobuf-java</artifactId>
|
|
<version>3.17.0</version>
|
|
</dependency>
|
|
|
|
<!-- https://docs.unidata.ucar.edu/netcdf-java/5.2/userguide/using_netcdf_java_artifacts.html -->
|
|
<!-- exclusions have been added here to fix problem with Deep Learning plugin - see above -->
|
|
<dependency>
|
|
<groupId>edu.ucar</groupId>
|
|
<artifactId>netcdfAll</artifactId>
|
|
<version>4.6.14</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>com.google.protobuf</groupId>
|
|
<artifactId>protobuf-java</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>com.google.protobuf</groupId>
|
|
<artifactId>protobuf-java-util</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/com.opencsv/opencsv -->
|
|
<dependency>
|
|
<groupId>com.opencsv</groupId>
|
|
<artifactId>opencsv</artifactId>
|
|
<version>5.0</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.springframework/org.springframework.core -->
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.postgresql/postgresql -->
|
|
<dependency>
|
|
<groupId>org.postgresql</groupId>
|
|
<artifactId>postgresql</artifactId>
|
|
<version>42.2.24</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.renjin/renjin-script-engine
|
|
Used to export data to R structures-->
|
|
<dependency>
|
|
<groupId>org.renjin</groupId>
|
|
<artifactId>renjin-script-engine</artifactId>
|
|
<version>0.9.2725</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api
|
|
this one is only needed to get rid of an annoying warning that shows up during startup -->
|
|
<dependency>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-api</artifactId>
|
|
<version>1.8.0-beta4</version>
|
|
</dependency>
|
|
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-nop
|
|
this one is only needed to get rid of an annoying warning that shows up during startup -->
|
|
<dependency>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-nop</artifactId>
|
|
<version>1.8.0-beta4</version>
|
|
</dependency>
|
|
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.docx4j/docx4j-JAXB-ReferenceImpl -->
|
|
<!-- note that we are excluding slf4j-api here, because if we don't then one of the
|
|
transitive dependencies of docx4j (jcl-over-slf4j) will try to load an older
|
|
version of slf4j-api, resulting in a weird warning/error that shows up every time that
|
|
PAMGuard start up -->
|
|
<!-- DONT BOTHER WITH EXCLUSION, DOESN'T MAKE THE ERROR GO AWAY. Leaving code here
|
|
just in case the older version does cause a conflict at some point -->
|
|
<dependency>
|
|
<groupId>org.docx4j</groupId>
|
|
<artifactId>docx4j-JAXB-ReferenceImpl</artifactId>
|
|
<version>11.1.3</version>
|
|
<!--
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-api</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
-->
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.xerial/sqlite-jdbc -->
|
|
<dependency>
|
|
<groupId>org.xerial</groupId>
|
|
<artifactId>sqlite-jdbc</artifactId>
|
|
<version>3.45.3.0</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/net.sf.ucanaccess/ucanaccess -->
|
|
<dependency>
|
|
<groupId>net.sf.ucanaccess</groupId>
|
|
<artifactId>ucanaccess</artifactId>
|
|
<version>4.0.4</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/nz.ac.waikato.cms.weka/weka-dev -->
|
|
<dependency>
|
|
<groupId>nz.ac.waikato.cms.weka</groupId>
|
|
<artifactId>weka-dev</artifactId>
|
|
<version>3.7.7</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/javax.vecmath/vecmath -->
|
|
<dependency>
|
|
<groupId>javax.vecmath</groupId>
|
|
<artifactId>vecmath</artifactId>
|
|
<version>1.5.2</version>
|
|
</dependency>
|
|
|
|
<!-- Jave2 (https://github.com/a-schild/jave2) - fork of original jave from sauronsoft. A LOT bigger; the win64 files alone are > 60Mb compared
|
|
to 14Mb originally. Since the old one worked fine, let's stick with it for now and save the space
|
|
<dependency>
|
|
<groupId>ws.schild</groupId>
|
|
<artifactId>jave-core</artifactId>
|
|
<version>2.7.1</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>ws.schild</groupId>
|
|
<artifactId>jave-nativebin-win64</artifactId>
|
|
<version>2.7.1</version>
|
|
</dependency>
|
|
-->
|
|
|
|
<!-- https://mvnrepository.com/artifact/it.sauronsoftware/jave
|
|
DOESN'T WORK - NOT IN THE ICM REPOSITORY ANYMORE. STICK WITH ORIG JAR FILE
|
|
<dependency>
|
|
<groupId>it.sauronsoftware</groupId>
|
|
<artifactId>jave</artifactId>
|
|
<version>1.0.2</version>
|
|
</dependency>
|
|
-->
|
|
|
|
|
|
<!-- From NilusXMLGenerator POM at https://bitbucket.org/tethysacousticmetadata/nilusxmlgenerator/src/master/-->
|
|
<dependency>
|
|
<groupId>org.eclipse.persistence</groupId>
|
|
<artifactId>org.eclipse.persistence.moxy</artifactId>
|
|
<version>2.5.0</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>javax.xml.bind</groupId>
|
|
<artifactId>jaxb-api</artifactId>
|
|
<version>${jaxb.api.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.glassfish.jaxb</groupId>
|
|
<artifactId>jaxb-runtime</artifactId>
|
|
<version>${jaxb.runtime.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.glassfish.jaxb</groupId>
|
|
<artifactId>jaxb-xjc</artifactId>
|
|
<version>${jaxb.xjc.version}</version>
|
|
</dependency>
|
|
|
|
|
|
<!-- dependencies copied from TethysJavaClient -->
|
|
<dependency>
|
|
<groupId>com.sun.jersey.contribs</groupId>
|
|
<artifactId>jersey-multipart</artifactId>
|
|
<version>1.18.1</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>commons-cli</groupId>
|
|
<artifactId>commons-cli</artifactId>
|
|
<version>1.2</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>org.apache.poi</groupId>
|
|
<artifactId>poi</artifactId>
|
|
<version>3.10-beta1</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>com.sun.jersey</groupId>
|
|
<artifactId>jersey-client</artifactId>
|
|
<version>1.18.1</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>com.sun.jersey.contribs</groupId>
|
|
<artifactId>jersey-apache-client</artifactId>
|
|
<version>1.18.1</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>com.miglayout</groupId>
|
|
<artifactId>miglayout</artifactId>
|
|
<version>3.7.4</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>ca.juliusdavies</groupId>
|
|
<artifactId>not-yet-commons-ssl</artifactId>
|
|
<version>0.3.11</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>javax.ws.rs</groupId>
|
|
<artifactId>javax.ws.rs-api</artifactId>
|
|
<version>2.1.1</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>javax.xml.bind</groupId>
|
|
<artifactId>jaxb-api</artifactId>
|
|
<version>2.2.11</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>com.sun.xml.bind</groupId>
|
|
<artifactId>jaxb-impl</artifactId>
|
|
<version>2.2.11</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>javax.activation</groupId>
|
|
<artifactId>activation</artifactId>
|
|
<version>1.1</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>org.glassfish.jaxb</groupId>
|
|
<artifactId>jaxb-core</artifactId>
|
|
<version>2.2.11</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>org.glassfish.jersey.core</groupId>
|
|
<artifactId>jersey-common</artifactId>
|
|
<version>2.2</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>org.apache.commons</groupId>
|
|
<artifactId>commons-text</artifactId>
|
|
<version>1.9</version>
|
|
</dependency>
|
|
|
|
<!-- dependencies copied from TethysJavaClient END -->
|
|
|
|
|
|
<!-- Thethy library not in Maven central, so you may need to copy the javaclient and nilus folders from
|
|
e.g. C:\Users\dg50\source\repos\**your projectfolder**\repo\tethys\org
|
|
to C:\Users\dg50\.m2\repository\tethys\org -->
|
|
<dependency>
|
|
<groupId>tethys.org</groupId>
|
|
<artifactId>nilus</artifactId>
|
|
<version>3.1</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>tethys.org</groupId>
|
|
<artifactId>javaclient</artifactId>
|
|
<version>3.0</version>
|
|
</dependency>
|
|
|
|
<!--
|
|
X3 library for decompressing sud files. Not in Maven repository
|
|
you may need to copy files from your downloaded PAMGuard source code,
|
|
e.g. C:\Users\*yourreposfolder*\source\repos\PAMGuardPAMGuard\repo\pamguard\org\x3\2.2.2 to
|
|
C:\Users\*yourusername*\.m2\repository\pamguard\org\x3\2.2.2
|
|
-->
|
|
<dependency>
|
|
<groupId>org.pamguard</groupId>
|
|
<artifactId>x3</artifactId>
|
|
<version>2.2.8</version>
|
|
</dependency>
|
|
|
|
|
|
<!-- https://mvnrepository.com/artifact/it.sauronsoftware/jave -->
|
|
<dependency>
|
|
<groupId>it.sauronsoftware</groupId>
|
|
<artifactId>jave</artifactId>
|
|
<version>1.0.2</version>
|
|
</dependency>
|
|
|
|
<!-- not in Maven repository -->
|
|
<dependency>
|
|
<groupId>com.synthbot</groupId>
|
|
<artifactId>jasiohost</artifactId>
|
|
<version>1.0.0</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.dataformat/jackson-dataformat-xml -->
|
|
<!--
|
|
<dependency>
|
|
<groupId>com.fasterxml.jackson.dataformat</groupId>
|
|
<artifactId>jackson-dataformat-xml</artifactId>
|
|
<version>2.10.1</version>
|
|
</dependency>
|
|
-->
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.springframework/spring-core -->
|
|
<dependency>
|
|
<groupId>org.springframework</groupId>
|
|
<artifactId>spring-core</artifactId>
|
|
<version>5.2.3.RELEASE</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/com.1stleg/jnativehook -->
|
|
<!-- For global hotkeys, especially in Logger -->
|
|
<dependency>
|
|
<groupId>com.1stleg</groupId>
|
|
<artifactId>jnativehook</artifactId>
|
|
<version>2.1.0</version>
|
|
</dependency>
|
|
|
|
<!-- https://mvnrepository.com/artifact/org.swinglabs.swingx/swingx-all -->
|
|
<!-- For new Network Receive Module -->
|
|
<dependency>
|
|
<groupId>org.swinglabs.swingx</groupId>
|
|
<artifactId>swingx-all</artifactId>
|
|
<version>1.6.5-1</version>
|
|
</dependency>
|
|
|
|
|
|
<!-- Extra 3D bits for JavaFX -->
|
|
<dependency>
|
|
<groupId>org.fxyz3d</groupId>
|
|
<artifactId>fxyz3d</artifactId>
|
|
<version>0.6.0</version>
|
|
</dependency>
|
|
|
|
<!-- Atlanta style for JavaFX -->
|
|
<dependency>
|
|
<groupId>io.github.mkpaz</groupId>
|
|
<artifactId>atlantafx-base</artifactId>
|
|
<version>2.0.1</version>
|
|
</dependency>
|
|
|
|
<!-- Four dependencies from xbee library that are needed for Genus module. -->
|
|
<dependency>
|
|
<groupId>javax.servlet</groupId>
|
|
<artifactId>javax.servlet-api</artifactId>
|
|
<version>4.0.1</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-all</artifactId>
|
|
<version>${mockito.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.powermock</groupId>
|
|
<artifactId>powermock-module-junit4</artifactId>
|
|
<version>${powermock.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.powermock</groupId>
|
|
<artifactId>powermock-api-mockito</artifactId>
|
|
<version>${powermock.version}</version>
|
|
</dependency>
|
|
|
|
|
|
|
|
<!-- Test dependencies -->
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
</project> |