PAMGuard/pom.xml
2023-05-05 11:03:18 +01:00

826 lines
28 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.07b</version>
<name>Pamguard Java12+</name>
<description>Pamguard for Java 12+, using Maven to control dependcies</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>
<javafx.version>16</javafx.version>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
<build>
<sourceDirectory>src</sourceDirectory>
<testSourceDirectory>${project.basedir}/src/test/java</testSourceDirectory>
<resources>
<resource>
<directory>src</directory>
<excludes>
<exclude>**/*.java</exclude> <!-- don't include any source files -->
<exclude>jars/*.*</exclude> <!-- don't include files in the jars folder -->
</excludes>
</resource>
</resources>
<plugins>
<plugin>
<!-- 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 -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.11.0</version>
<configuration>
<!-- set compiler to use Java version 11 API https://docs.oracle.com/javase/9/tools/javac.htm#JSWOR627 -->
<release>11</release>
<compilerId>jdt</compilerId>
<compilerArguments>
<properties>.settings/org.eclipse.jdt.core.prefs</properties> <!-- make sure to use same params as what Eclipse uses -->
</compilerArguments>
</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>
<plugin>
<groupId>org.openjfx</groupId>
<artifactId>javafx-maven-plugin</artifactId>
<version>0.0.6</version>
<configuration>
<source>17</source>
<target>17</target>
<release>17</release>
</configuration>
</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.4.1</version>
<configuration>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" />
</transformers>
</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>
<filters>
<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>
</excludes>
</filter>
</filters>
</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.5.0</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>
<!-- Allows Maven to run JUnit tests -->
<!-- Note that for some reason surefire 3.0.0 does not seem to work.
It fails to find or run any of the unit tests - no idea why. -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.22.0</version>
</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 Jamie's code -->
<!-- IMPORTANT: SOMEHOW THIS REPO INTERFERES WITH THE JAVAFX DEPENDENCIES.
Don't understand how, but it does. If Maven is not downloading the JavaFX
dependencies and is instead throwing errors, try commenting out this repository.
Let Maven download the JavaFX files, and then uncomment this repo again.
Same thing seems to be occurring if I try to update the postgresql library. -->
<!-- <repository> -->
<!-- <snapshots> -->
<!-- <enabled>false</enabled> -->
<!-- </snapshots> -->
<!-- <id>central</id> -->
<!-- <name>a0u0ltozdsehx-artifactory-primary-0-releases</name> -->
<!-- <url>https://jmachund.jfrog.io/artifactory/jpam2</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>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>bedatadriven</id>
<name>bedatadriven_renjin</name>
<url>https://nexus.bedatadriven.com/content/groups/public/</url>
</repository>
<repository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>talan</id>
<name>talan</name>
<url>https://nexus.talanlabs.com/content/repositories/releases/</url>
</repository>
<repository>
<id>central</id>
<url>https://repo1.maven.org/maven2</url>
</repository>
</repositories>
<!-- ************************* Dependencies ************************************* -->
<dependencies>
<!-- https://mvnrepository.com/artifact/junit/junit Testing framework for
PAMGuard -->
<!-- https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-api -->
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>5.9.2</version>
</dependency>
<dependency>
<groupId>org.junit.platform</groupId>
<artifactId>junit-platform-runner</artifactId>
<version>1.9.2</version>
<scope>test</scope>
</dependency>
<!--jpam project - utilities -->
<dependency>
<groupId>io.github.macster110</groupId>
<artifactId>jpamutils</artifactId>
<version>0.0.56</version>
</dependency>
<!--jpam project - Deep learning java library DG has commented this out
since there are problems with access to the maven repo on JDJM's Github.
For now a jar file is included in the build and we'll go back to Maven when
we can ... DG 15 Jan 2022. Repo for jpam code- this used for deep learning
[15:17] Jamie MacAulay -->
<dependency>
<groupId>io.github.macster110</groupId>
<artifactId>jdl4pam</artifactId>
<version>0.0.96</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>
<!-- Decorates JavaFX components -->
<dependency>
<groupId>net.synedra</groupId>
<artifactId>validatorfx</artifactId>
<version>0.4.0</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.0.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.2.0</version>
</dependency>
<!-- Ikonli FontAwesome5 font pack https://kordamp.org/ikonli/cheat-sheet-fontawesome5.html -->
<!-- <dependency> <groupId>org.kordamp.ikonli</groupId> <artifactId>ikonli-fontawesome5-pack</artifactId>
<version>12.2.0</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.2.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/net.sf.geographiclib/GeographicLib-Java -->
<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/java3d/j3dutils -->
<!-- https://mvnrepository.com/artifact/java3d/j3dcore -->
<!-- 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.5.3</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.diffplug.matsim/matfilerw -->
<dependency>
<groupId>com.diffplug.matsim</groupId>
<artifactId>matfilerw</artifactId>
<version>3.1.1</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 -->
<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.28.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> -->
<!-- not in Maven repository -->
<dependency>
<groupId>pamguard.org</groupId>
<artifactId>x3</artifactId>
<version>2.2.0</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>
<!-- Theme for JavaFX -->
<dependency>
<groupId>io.github.mkpaz</groupId>
<artifactId>atlantafx-base</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
</project>