Loading files
This file is pinned to the selected release. Download the original to open it in your design tool.
<?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>com.marginallyclever</groupId>
<artifactId>Makelangelo</artifactId>
<version>7.78.6</version>
<name>Makelangelo</name>
<description>Makelangelo Software is a Java program that prepares art for CNC plotters. It is especially designed for the Makelangelo Robot.
It pairs really well with Marlin-polargraph, the code in the brain of the robot that receives instructions and moves the motors.</description>
<url>https://www.makelangelo.com/</url>
<issueManagement>
<url>https://github.com/MarginallyClever/Makelangelo-software/issues</url>
<system>GitHub Issues</system>
</issueManagement>
<licenses>
<license>
<name>GPLv2</name>
<url>https://opensource.org/licenses/GPL-2.0</url>
<distribution>repo</distribution>
</license>
</licenses>
<scm>
<url>https://github.com/MarginallyClever/Makelangelo-software</url>
<connection>scm:git:git@github.com:MarginallyClever/Makelangelo-software.git</connection>
</scm>
<organization>
<name>Marginally Clever Robots, Limited.</name>
<url>https://www.marginallyclever.com/</url>
</organization>
<developers>
<developer>
<id>i-make-robots</id>
<name>Dan Royer</name>
<email>dan@marginallyclever.com</email>
<url>https://github.com/i-make-robots</url>
<roles>
<role>architect</role>
<role>developer</role>
</roles>
<timezone>-8</timezone>
</developer>
<developer>
<id>pc</id>
<name>Peter Colapietro</name>
<email>petercolapietro@gmail.com</email>
<url>https://github.com/virtuoushub</url>
<roles>
<role>architect</role>
<role>developer</role>
</roles>
<timezone>-5</timezone>
</developer>
</developers>
<pluginRepositories>
<pluginRepository>
<id>maven2</id>
<url>https://repo.maven.apache.org/maven2/</url>
</pluginRepository>
</pluginRepositories>
<repositories>
<repository>
<id>maven_central</id>
<name>Maven Central</name>
<url>https://repo.maven.apache.org/maven2/</url>
</repository>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
<repository>
<id>my-local-repo</id>
<url>file://${project.basedir}/java/local-maven-repo</url>
</repository>
</repositories>
<build>
<resources>
<!-- General (non-filtered) resources -->
<resource>
<directory>src/main/resources</directory>
<filtering>false</filtering> <!-- Default, no filtering -->
<excludes>
<exclude>makelangelo.properties</exclude> <!-- Exclude this file from unfiltered resources -->
</excludes>
</resource>
<!-- Filter only makelangelo.properties -->
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering> <!-- Enable filtering for selected files -->
<includes>
<include>makelangelo.properties</include> <!-- Only this file -->
</includes>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<release>${minimum.java.version}</release>
<useIncrementalCompilation>false</useIncrementalCompilation>
<encoding>UTF-8</encoding>
<compilerArgs>
<compilerArg>-Xlint:unchecked</compilerArg>
<compilerArg>-Xlint:deprecation</compilerArg>
</compilerArgs>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifestEntries>
<SplashScreen-Image>splash.png</SplashScreen-Image>
</manifestEntries>
<manifest>
<mainClass>com.marginallyclever.makelangelo.Makelangelo</mainClass>
<addClasspath>true</addClasspath>
</manifest>
</archive>
<descriptors>
<descriptor>${project.basedir}/src/main/assembly/application.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.3.1</version>
</plugin>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>3.1.0</version>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.2</version>
</plugin>
<plugin>
<artifactId>maven-install-plugin</artifactId>
<version>2.5.2</version>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<archive>
<manifestEntries>
<SplashScreen-Image>splash.png</SplashScreen-Image>
<Implementation-Version>${project.version}</Implementation-Version>
</manifestEntries>
<manifest>
<mainClass>com.marginallyclever.makelangelo.Makelangelo</mainClass>
<addClasspath>true</addClasspath>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.3.1</version>
<executions>
<execution>
<id>copy-fat-jar</id>
<phase>package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/target/package</outputDirectory>
<resources>
<resource>
<directory>target</directory>
<includes>
<include>Makelangelo*-with-dependencies.jar</include>
</includes>
<excludes>
<exclude>**/logback.xml</exclude>
<exclude>logback.xml</exclude>
</excludes>
<filtering>false</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-site-plugin</artifactId>
<version>3.9.1</version>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M5</version>
<configuration>
<parallel>methods</parallel>
<threadCount>10</threadCount>
<!--<argLine>-Djava.awt.headless=true</argLine>-->
<additionalClasspathElements>
<additionalClasspathElement>${project.build.outputDirectory}</additionalClasspathElement>
</additionalClasspathElements>
</configuration>
</plugin>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<configuration>
<ignoreNonCompile>true</ignoreNonCompile>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>3.0.0-M3</version>
<executions>
<execution>
<id>enforce-maven</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireMavenVersion>
<version>${minimum.maven.version}</version>
<message>********** Minimum Maven Version is
${minimum.maven.version}. Please upgrade Maven before
continuing (run "mvn --version" to check). **********</message>
</requireMavenVersion>
</rules>
</configuration>
</execution>
<execution>
<id>enforce-java</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireJavaVersion>
<version>${minimum.java.version}</version>
</requireJavaVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>2.8</version>
</plugin>
<plugin>
<groupId>io.github.git-commit-id</groupId>
<artifactId>git-commit-id-maven-plugin</artifactId>
<version>5.0.0</version>
<executions>
<execution>
<id>get-the-git-infos</id>
<goals>
<goal>revision</goal>
</goals>
<phase>initialize</phase>
</execution>
</executions>
<configuration>
<verbose>true</verbose>
<failOnNoGitDirectory>false</failOnNoGitDirectory>
<generateGitPropertiesFile>true</generateGitPropertiesFile>
<generateGitPropertiesFilename>${project.build.outputDirectory}/git.properties</generateGitPropertiesFilename>
<includeOnlyProperties>
<includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
<includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
<includeOnlyProperty>^git.branch$</includeOnlyProperty>
<includeOnlyProperty>^git.dirty$</includeOnlyProperty>
</includeOnlyProperties>
<commitIdGenerationMode>full</commitIdGenerationMode>
</configuration>
</plugin>
<!-- Code Coverage report generation -->
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.11</version>
<configuration>
</configuration>
<executions>
<execution>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>generate-code-coverage-report</id>
<phase>test</phase>
<goals>
<goal>report</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.3.0</version>
</plugin>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.1.2</version>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>2.5.3</version>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>3.0.0</version>
</plugin>
</plugins>
</pluginManagement>
</build>
<dependencies>
<!-- misc -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.16.1</version>
</dependency>
<!-- https://github.com/java-native/jssc/ -->
<dependency>
<groupId>io.github.java-native</groupId>
<artifactId>jssc</artifactId>
<version>2.9.5</version>
</dependency>
<dependency>
<groupId>org.scijava</groupId>
<artifactId>native-lib-loader</artifactId>
<version>2.5.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient -->
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.13</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpcore -->
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpcore</artifactId>
<version>4.4.16</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpmime -->
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpmime</artifactId>
<version>4.5</version>
</dependency>
<!-- for bz2 compression -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-compress</artifactId>
<version>1.28.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/de.sciss/jrpicam -->
<dependency>
<groupId>de.sciss</groupId>
<artifactId>jrpicam</artifactId>
<version>0.2.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/net.sourceforge/kabeja -->
<dependency>
<groupId>org.kabeja</groupId>
<artifactId>kabeja</artifactId>
<version>0.4</version>
</dependency>
<!-- vector math -->
<dependency>
<groupId>javax.vecmath</groupId>
<artifactId>vecmath</artifactId>
<version>1.5.2</version>
</dependency>
<!-- test suite -->
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>5.11.0-M1</version>
<scope>test</scope>
</dependency>
<!-- used by PreferenceHelper -->
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20231013</version>
</dependency>
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<version>24.0.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/commons-validator/commons-validator -->
<dependency>
<groupId>commons-validator</groupId>
<artifactId>commons-validator</artifactId>
<version>1.10.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.xmlgraphics/batik-xml -->
<dependency>
<groupId>org.apache.xmlgraphics</groupId>
<artifactId>batik-all</artifactId>
<version>1.19</version>
</dependency>
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-swing-junit</artifactId>
<version>3.17.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-inline</artifactId>
<version>4.2.0</version>
<scope>test</scope>
</dependency>
<!-- qoi image format support -->
<dependency>
<groupId>me.saharnooby</groupId>
<artifactId>qoi-java</artifactId>
<version>1.2.1</version>
</dependency>
<!-- Also add this, if you want to use QOI with ImageIO -->
<dependency>
<groupId>me.saharnooby</groupId>
<artifactId>qoi-java-awt</artifactId>
<version>1.2.1</version>
</dependency>
<!-- webp image format support -->
<dependency>
<groupId>org.sejda.imageio</groupId>
<artifactId>webp-imageio</artifactId>
<version>0.1.6</version>
</dependency>
<!-- flatlaf look and feel -->
<dependency>
<groupId>com.formdev</groupId>
<artifactId>flatlaf</artifactId>
<version>3.2.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.github.weisj/jsvg -->
<dependency>
<groupId>com.github.weisj</groupId>
<artifactId>jsvg</artifactId>
<version>1.3.0</version>
</dependency>
<!-- for voronoi -->
<!-- https://mvnrepository.com/artifact/org.locationtech.jts/jts -->
<dependency>
<groupId>org.locationtech.jts</groupId>
<artifactId>jts-core</artifactId>
<version>1.20.0</version>
</dependency>
<!-- for Reflections -->
<dependency>
<groupId>io.github.classgraph</groupId>
<artifactId>classgraph</artifactId>
<version>4.8.184</version>
</dependency>
<dependency>
<groupId>org.reflections</groupId>
<artifactId>reflections</artifactId>
<version>0.10.2</version>
<scope>compile</scope>
</dependency>
<!-- docking windows -->
<dependency>
<groupId>io.github.andrewauclair</groupId>
<artifactId>modern-docking-api</artifactId>
<version>0.11.6</version>
</dependency>
<dependency>
<groupId>io.github.andrewauclair</groupId>
<artifactId>modern-docking-single-app</artifactId>
<version>0.11.6</version>
</dependency>
<dependency>
<groupId>io.github.andrewauclair</groupId>
<artifactId>modern-docking-ui</artifactId>
<version>0.11.6</version>
</dependency>
<!-- webcam capture -->
<dependency>
<groupId>com.github.sarxos</groupId>
<artifactId>webcam-capture</artifactId>
<version>0.3.12</version>
</dependency>
<!-- read audio files -->
<dependency>
<groupId>com.github.umjammer</groupId>
<artifactId>mp3spi</artifactId>
<version>1.9.17</version>
</dependency>
<!-- java parsing? -->
<dependency>
<groupId>org.codehaus.janino</groupId>
<artifactId>janino</artifactId>
<version>3.1.8</version>
</dependency>
<!-- logging -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>2.0.17</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.5.27</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.5.27</version>
</dependency>
<!-- donatello -->
<dependency>
<!--
When I run locally, I use groupID com.marginallyclever so that it grabs
the local copy and I can iterate quickly.
When I publish to GitHub/jitpack I have to use groupID com.github.marginallyclever so that
GitHub/Jitpack/etc can find the copy published by Jitpack.
I have to do this dance every time.
-->
<groupId>com.github.marginallyclever</groupId>
<artifactId>nodegraphcore</artifactId>
<version>1.6.4</version>
</dependency>
<dependency>
<!--
When I run locally, I use groupID com.marginallyclever so that it grabs
the local copy and I can iterate quickly.
When I publish to GitHub/jitpack I have to use groupID com.github.marginallyclever so that
GitHub/Jitpack/etc can find the copy published by Jitpack.
I have to do this dance every time.
-->
<groupId>com.github.marginallyclever</groupId>
<artifactId>donatello</artifactId>
<version>1.9.7</version>
</dependency>
</dependencies>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<minimum.maven.version>3.8.1</minimum.maven.version>
<minimum.java.version>22</minimum.java.version>
<maven.compiler.source>${minimum.java.version}</maven.compiler.source>
<maven.compiler.target>${minimum.java.version}</maven.compiler.target>
<maven.compiler.release>${minimum.java.version}</maven.compiler.release>
</properties>
</project>74469e1ccThis file is pinned to the selected release. Download the original to open it in your design tool.