| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| ~ Licensed to the Apache Software Foundation (ASF) under one |
| ~ or more contributor license agreements. See the NOTICE file |
| ~ distributed with this work for additional information |
| ~ regarding copyright ownership. The ASF licenses this file |
| ~ to you under the Apache License, Version 2.0 (the |
| ~ "License"); you may not use this file except in compliance |
| ~ with the License. You may obtain a copy of the License at |
| ~ |
| ~ http://www.apache.org/licenses/LICENSE-2.0 |
| ~ |
| ~ Unless required by applicable law or agreed to in writing, |
| ~ software distributed under the License is distributed on an |
| ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| ~ KIND, either express or implied. See the License for the |
| ~ specific language governing permissions and limitations |
| ~ under the License. |
| --> |
| |
| <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> |
| |
| <modelVersion>4.0.0</modelVersion> |
| <parent> |
| <groupId>org.optaplanner</groupId> |
| <artifactId>optaplanner-build-parent</artifactId> |
| <version>8.45.0-SNAPSHOT</version> |
| <relativePath>../build/optaplanner-build-parent/pom.xml</relativePath> |
| </parent> |
| |
| <artifactId>optaplanner-examples</artifactId> |
| |
| <name>OptaPlanner examples</name> |
| <description> |
| OptaPlanner solves planning problems. |
| This lightweight, embeddable planning engine implements powerful and scalable algorithms |
| to optimize business resource scheduling and planning. |
| |
| This module contains the examples which demonstrate how to use it in a normal Java application. |
| </description> |
| <url>https://www.optaplanner.org</url> |
| |
| <properties> |
| <java.module.name>org.optaplanner.examples</java.module.name> |
| </properties> |
| |
| <repositories> |
| <!-- Included so the examples sources in the distribution zip build out-of-the-box with maven --> |
| <repository> |
| <id>jboss-public-repository-group</id> |
| <url>https://repository.jboss.org/nexus/content/groups/public/</url> |
| <releases> |
| <!-- Get releases only from Maven Central which is faster. --> |
| <enabled>false</enabled> |
| </releases> |
| <snapshots> |
| <enabled>true</enabled> |
| </snapshots> |
| </repository> |
| </repositories> |
| |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-dependency-plugin</artifactId> |
| <configuration> |
| <ignoredUsedUndeclaredDependencies> |
| <dependency>org.optaplanner:optaplanner-core-impl:jar</dependency> |
| </ignoredUsedUndeclaredDependencies> |
| <ignoredUnusedDeclaredDependencies> |
| <dependency>org.optaplanner:optaplanner-core:jar</dependency> |
| </ignoredUnusedDeclaredDependencies> |
| </configuration> |
| </plugin> |
| </plugins> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <configuration> |
| <systemPropertyVariables> |
| <java.awt.headless>true</java.awt.headless> |
| </systemPropertyVariables> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>exec-maven-plugin</artifactId> |
| <!-- WARNING: This configuration must be run with "mvn exec:java" not "mvn exec:exec". --> |
| <!-- It is impossible to write a configuration that is compatible with both exec:java and exec:exec --> |
| <configuration> |
| <mainClass>org.optaplanner.examples.app.OptaPlannerExamplesApp</mainClass> |
| <!-- For some reason, Drools cannot find domain classes unless they are specified as a Jar in the classpath --> |
| <!-- (By default, exec:java add target/classes, not target/jarfile) --> |
| <!-- REMOVE ME when https://issues.redhat.com/browse/KOGITO-3954 is fixed --> |
| <additionalClasspathElements> |
| <additionalClasspathElement>${project.build.directory}${file.separator}${project.build.finalName}.jar</additionalClasspathElement> |
| </additionalClasspathElements> |
| <arguments> |
| <argument>-Xms256m</argument> |
| <!-- Most examples run (potentially slower) with max heap of 128 MB (so -Xmx128m), but 1 example's dataset requires 2 GB --> |
| <argument>-Xmx2g</argument> |
| </arguments> |
| </configuration> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| </build> |
| |
| <!-- TODO: Move to optaplanner-build-parent once https://github.com/quarkusio/quarkus-platform-bom-generator/issues/64 is solved. --> |
| <dependencyManagement> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-text</artifactId> |
| <version>${version.org.apache.commons.text}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jdom</groupId> |
| <artifactId>jdom2</artifactId> |
| <version>${version.org.jdom2}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.poi</groupId> |
| <artifactId>poi</artifactId> |
| <version>${version.org.apache.poi}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.poi</groupId> |
| <artifactId>poi-ooxml</artifactId> |
| <version>${version.org.apache.poi}</version> |
| <exclusions> |
| <exclusion> |
| <!-- Collides with 'javax.xml.stream:stax-api' brought in by 'org.drools:drools-decisiontables'. --> |
| <groupId>stax</groupId> |
| <artifactId>stax-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.glassfish</groupId> |
| <artifactId>javax.json</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| </dependencies> |
| </dependencyManagement> |
| |
| <dependencies> |
| <!-- Internal dependencies --> |
| <dependency> |
| <groupId>org.optaplanner</groupId> |
| <artifactId>optaplanner-core</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.optaplanner</groupId> |
| <artifactId>optaplanner-persistence-common</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.optaplanner</groupId> |
| <artifactId>optaplanner-persistence-jackson</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.optaplanner</groupId> |
| <artifactId>optaplanner-benchmark</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.optaplanner</groupId> |
| <artifactId>optaplanner-test</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <!-- External dependencies --> |
| <dependency> |
| <groupId>org.glassfish</groupId> |
| <artifactId>jakarta.json</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.jfree</groupId> |
| <artifactId>jfreechart</artifactId> |
| </dependency> |
| <!-- Common utils --> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-text</artifactId> |
| </dependency> |
| <!-- Logging --> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>ch.qos.logback</groupId> |
| <artifactId>logback-classic</artifactId> |
| <scope>runtime</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.logging.log4j</groupId> |
| <artifactId>log4j-to-slf4j</artifactId> |
| <scope>runtime</scope> |
| </dependency> |
| <!-- JSON --> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-annotations</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-core</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-databind</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.datatype</groupId> |
| <artifactId>jackson-datatype-jsr310</artifactId> |
| <scope>runtime</scope> |
| </dependency> |
| <!-- Testing --> |
| <dependency> |
| <groupId>org.optaplanner</groupId> |
| <artifactId>optaplanner-core-impl</artifactId> |
| <type>test-jar</type> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.junit.jupiter</groupId> |
| <artifactId>junit-jupiter-api</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.junit.jupiter</groupId> |
| <artifactId>junit-jupiter-engine</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.junit.jupiter</groupId> |
| <artifactId>junit-jupiter-params</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.assertj</groupId> |
| <artifactId>assertj-core</artifactId> |
| <scope>test</scope> |
| </dependency> |
| |
| <!-- Examples only dependencies. --> |
| <!-- Converters --> |
| <dependency> |
| <groupId>org.jdom</groupId> |
| <artifactId>jdom2</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.poi</groupId> |
| <artifactId>poi</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.poi</groupId> |
| <artifactId>poi-ooxml</artifactId> |
| </dependency> |
| </dependencies> |
| </project> |