sebthom/jstuff

View on GitHub
jstuff-integration/pom.xml

Summary

Maintainability
Test Coverage
<?xml version="1.0" encoding="UTF-8"?>
<!--
SPDX-FileCopyrightText: © Sebastian Thomschke and contributors
SPDX-License-Identifier: EPL-2.0
-->
<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">

   <modelVersion>4.0.0</modelVersion>

   <parent>
      <groupId>net.sf.jstuff</groupId>
      <artifactId>jstuff-parent</artifactId>
      <version>8.0.1-SNAPSHOT</version>
      <relativePath>../pom.xml</relativePath>
   </parent>

   <artifactId>jstuff-integration</artifactId>

   <properties>
       <!-- https://central.sonatype.com/artifact/com.fasterxml.jackson.core/jackson-core/versions -->
      <jackson.version>2.18.0</jackson.version>
   </properties>

   <dependencyManagement>
      <dependencies>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>jstuff-core</artifactId>
            <version>${project.version}</version>
            <scope>import</scope>
            <type>pom</type>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>jstuff-integration</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>jstuff-xml</artifactId>
            <version>${project.version}</version>
         </dependency>

         <!--
         ==================================================================
         Apache Commons
         ==================================================================
         -->
         <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils</artifactId>
            <version>1.9.4</version>
         </dependency>

         <!--
         ==================================================================
         jakarta
         ==================================================================
         -->
         <dependency>
           <groupId>jakarta.activation</groupId>
           <artifactId>jakarta.activation-api</artifactId>
           <version>2.1.3</version>
         </dependency>
         <dependency>
            <!-- @PostConstruct / @PreDestroy -->
            <groupId>jakarta.annotation</groupId>
            <artifactId>jakarta.annotation-api</artifactId>
            <version>3.0.0</version>
         </dependency>
         <dependency>
            <!-- @Inject / @Named -->
            <groupId>jakarta.inject</groupId>
            <artifactId>jakarta.inject-api</artifactId>
            <version>2.0.1</version>
         </dependency>
         <dependency>
            <groupId>jakarta.mail</groupId>
            <artifactId>jakarta.mail-api</artifactId>
            <version>2.1.3</version>
         </dependency>
         <dependency>
            <groupId>jakarta.servlet</groupId>
            <artifactId>jakarta.servlet-api</artifactId>
            <version>6.0.0</version>
         </dependency>

         <!--
         ==================================================================
         Spring Framework
         ==================================================================
         -->
         <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-framework-bom</artifactId>
            <!-- https://central.sonatype.com/artifact/org.springframework/spring-beans -->
            <version>6.1.14</version>
            <type>pom</type>
            <scope>import</scope>
         </dependency>

         <!--
         ==================================================================
         Compression
         ==================================================================
         -->
         <dependency>
            <!-- https://github.com/lz4/lz4-java -->
            <groupId>org.lz4</groupId>
            <artifactId>lz4-java</artifactId>
            <version>1.8.0</version>
         </dependency>
         <dependency>
            <!-- https://github.com/luben/zstd-jni -->
            <groupId>com.github.luben</groupId>
            <artifactId>zstd-jni</artifactId>
            <version>1.5.6-7</version>
         </dependency>
         <dependency>
            <!-- https://github.com/xerial/snappy-java -->
            <groupId>org.xerial.snappy</groupId>
            <artifactId>snappy-java</artifactId>
            <version>1.1.10.7</version>
         </dependency>
         <dependency>
            <!-- https://github.com/hyperxpro/Brotli4j -->
            <groupId>com.aayushatharva.brotli4j</groupId>
            <artifactId>brotli4j</artifactId>
            <version>1.17.0</version>
         </dependency>
         <dependency>
            <!-- https://github.com/ning/compress -->
            <groupId>com.ning</groupId>
            <artifactId>compress-lzf</artifactId>
            <version>1.1.2</version>
         </dependency>

         <!--
         ==================================================================
         Misc.
         ==================================================================
         -->
         <dependency>
            <!-- https://search.maven.org/search?q=g:net.bytebuddy -->
            <groupId>net.bytebuddy</groupId>
            <artifactId>byte-buddy</artifactId>
            <version>1.15.7</version>
         </dependency>
         <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <version>2.3.232</version>
         </dependency>
         <dependency>
            <groupId>com.fasterxml.jackson</groupId>
            <artifactId>jackson-bom</artifactId>
            <version>${jackson.version}</version>
            <type>pom</type>
            <scope>import</scope>
         </dependency>
         <dependency>
            <groupId>com.thoughtworks.paranamer</groupId>
            <artifactId>paranamer</artifactId>
            <version>2.8</version>
         </dependency>
         <dependency>
            <groupId>com.thoughtworks.xstream</groupId>
            <artifactId>xstream</artifactId>
            <version>1.4.20</version>
         </dependency>
         <dependency>
            <!-- https://search.maven.org/artifact/org.apache.tomcat/tomcat-catalina -->
            <groupId>org.apache.tomcat</groupId>
            <artifactId>tomcat-catalina</artifactId>
            <version>10.1.30</version>
         </dependency>
         <dependency>
            <groupId>jakarta.persistence</groupId>
            <artifactId>jakarta.persistence-api</artifactId>
            <version>3.1.0</version>
         </dependency>
      </dependencies>
   </dependencyManagement>

   <dependencies>
      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>jstuff-core</artifactId>
      </dependency>
      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>jstuff-xml</artifactId>
      </dependency>

      <!--
      ==================================================================
      Apache Commons
      ==================================================================
      -->
      <dependency>
         <!-- only for Spring BeanRowMapper -->
         <groupId>commons-beanutils</groupId>
         <artifactId>commons-beanutils</artifactId>
         <optional>true</optional>
      </dependency>
      <dependency>
         <groupId>org.apache.commons</groupId>
         <artifactId>commons-lang3</artifactId>
      </dependency>


      <!--
      ==================================================================
      jakarta
      ==================================================================
      -->
      <dependency>
         <groupId>jakarta.activation</groupId>
         <artifactId>jakarta.activation-api</artifactId>
         <optional>true</optional>
      </dependency>
      <dependency>
         <!-- @PostConstruct / @PreDestroy -->
         <groupId>jakarta.annotation</groupId>
         <artifactId>jakarta.annotation-api</artifactId>
         <optional>true</optional>
      </dependency>
      <dependency>
         <!-- @Inject / @Named -->
         <groupId>jakarta.inject</groupId>
         <artifactId>jakarta.inject-api</artifactId>
         <optional>true</optional>
      </dependency>
      <dependency>
         <groupId>jakarta.mail</groupId>
         <artifactId>jakarta.mail-api</artifactId>
         <optional>true</optional>
      </dependency>
      <dependency>
         <groupId>jakarta.servlet</groupId>
         <artifactId>jakarta.servlet-api</artifactId>
         <optional>true</optional>
      </dependency>

      <!--
      ==================================================================
      Spring Framework
      ==================================================================
      -->
      <dependency>
         <groupId>org.springframework</groupId>
         <artifactId>spring-aop</artifactId>
         <optional>true</optional>
         <exclusions>
            <exclusion>
               <groupId>org.springframework</groupId>
               <artifactId>spring-jcl</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
         <groupId>org.springframework</groupId>
         <artifactId>spring-beans</artifactId>
         <optional>true</optional>
         <exclusions>
            <exclusion>
               <groupId>org.springframework</groupId>
               <artifactId>spring-jcl</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
         <groupId>org.springframework</groupId>
         <artifactId>spring-context</artifactId>
         <optional>true</optional>
         <exclusions>
            <exclusion>
               <groupId>org.springframework</groupId>
               <artifactId>spring-jcl</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
         <groupId>org.springframework</groupId>
         <artifactId>spring-core</artifactId>
         <optional>true</optional>
         <exclusions>
            <exclusion>
               <groupId>org.springframework</groupId>
               <artifactId>spring-jcl</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
         <groupId>org.springframework</groupId>
         <artifactId>spring-web</artifactId>
         <optional>true</optional>
         <exclusions>
            <exclusion>
               <groupId>org.springframework</groupId>
               <artifactId>spring-jcl</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
         <groupId>org.springframework</groupId>
         <artifactId>spring-jdbc</artifactId>
         <optional>true</optional>
         <exclusions>
            <exclusion>
               <groupId>org.springframework</groupId>
               <artifactId>spring-jcl</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
         <groupId>org.springframework</groupId>
         <artifactId>spring-tx</artifactId>
         <optional>true</optional>
         <exclusions>
            <exclusion>
               <groupId>org.springframework</groupId>
               <artifactId>spring-jcl</artifactId>
            </exclusion>
         </exclusions>
      </dependency>

      <!--
      ==================================================================
      Compression
      ==================================================================
      -->
      <dependency>
         <!-- https://github.com/lz4/lz4-java -->
         <groupId>org.lz4</groupId>
         <artifactId>lz4-java</artifactId>
         <optional>true</optional>
      </dependency>

      <dependency>
         <!-- https://github.com/luben/zstd-jni -->
         <groupId>com.github.luben</groupId>
         <artifactId>zstd-jni</artifactId>
         <optional>true</optional>
      </dependency>

      <dependency>
         <!-- https://github.com/xerial/snappy-java -->
         <groupId>org.xerial.snappy</groupId>
         <artifactId>snappy-java</artifactId>
         <optional>true</optional>
      </dependency>

      <dependency>
         <!-- https://github.com/hyperxpro/Brotli4j -->
         <groupId>com.aayushatharva.brotli4j</groupId>
         <artifactId>brotli4j</artifactId>
         <optional>true</optional>
      </dependency>

      <dependency>
         <!-- https://github.com/ning/compress -->
         <groupId>com.ning</groupId>
         <artifactId>compress-lzf</artifactId>
         <optional>true</optional>
      </dependency>

      <!--
      ==================================================================
      Misc.
      ==================================================================
      -->
      <dependency>
         <!-- https://search.maven.org/search?q=g:net.bytebuddy -->
         <!-- only for ServiceRegistry -->
         <groupId>net.bytebuddy</groupId>
         <artifactId>byte-buddy</artifactId>
         <optional>true</optional>
      </dependency>

      <dependency>
         <!-- only for H2ServerSpringBean -->
         <groupId>com.h2database</groupId>
         <artifactId>h2</artifactId>
         <optional>true</optional>
      </dependency>
      <dependency>
         <groupId>com.fasterxml.jackson.core</groupId>
         <artifactId>jackson-core</artifactId>
         <optional>true</optional>
      </dependency>
      <dependency>
         <groupId>com.fasterxml.jackson.core</groupId>
         <artifactId>jackson-databind</artifactId>
         <optional>true</optional>
      </dependency>
      <dependency>
         <groupId>com.fasterxml.jackson.dataformat</groupId>
         <artifactId>jackson-dataformat-yaml</artifactId>
         <optional>true</optional>
      </dependency>
      <dependency>
         <!-- SpringBeanParanamer -->
         <groupId>com.thoughtworks.paranamer</groupId>
         <artifactId>paranamer</artifactId>
         <optional>true</optional>
      </dependency>
      <dependency>
         <!-- for ATOM only -->
         <groupId>com.thoughtworks.xstream</groupId>
         <artifactId>xstream</artifactId>
         <optional>true</optional>
         <exclusions>
            <exclusion>
               <groupId>xpp3</groupId>
               <artifactId>xpp3_min</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
         <!-- for TomcatAuthenticator only -->
         <groupId>org.apache.tomcat</groupId>
         <artifactId>tomcat-catalina</artifactId>
         <optional>true</optional>
         <exclusions>
            <exclusion>
               <groupId>org.apache.tomcat</groupId>
               <artifactId>tomcat-annotations-api</artifactId>
            </exclusion>
            <exclusion>
               <groupId>org.apache.tomcat</groupId>
               <artifactId>tomcat-juli</artifactId>
            </exclusion>
            <exclusion>
               <groupId>org.apache.tomcat</groupId>
               <artifactId>tomcat-servlet-api</artifactId>
            </exclusion>
            <exclusion>
               <groupId>org.apache.tomcat</groupId>
               <artifactId>tomcat-jaspic-api</artifactId>
            </exclusion>
            <exclusion>
               <groupId>org.apache.tomcat</groupId>
               <artifactId>tomcat-jsp-api</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
         <groupId>jakarta.persistence</groupId>
         <artifactId>jakarta.persistence-api</artifactId>
         <optional>true</optional>
      </dependency>


      <!--
      ==================================================================
      Test dependencies
      ==================================================================
      -->
      <dependency>
         <!-- to generate test data -->
         <!-- https://github.com/andygibson/datafactory -->
         <!-- https://github.com/DiUS/java-faker -->
         <!-- https://github.com/Devskiller/jfairy -->
         <groupId>com.github.javafaker</groupId>
         <artifactId>javafaker</artifactId>
         <version>1.0.2</version>
         <scope>test</scope>
         <exclusions>
            <exclusion>
               <groupId>org.slf4j</groupId>
               <artifactId>slf4j-simple</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
         <groupId>org.springframework</groupId>
         <artifactId>spring-test</artifactId>
         <scope>test</scope>
      </dependency>
      <dependency>
         <groupId>org.aspectj</groupId>
         <artifactId>aspectjrt</artifactId>
         <version>1.9.22.1</version>
         <scope>test</scope>
      </dependency>
      <dependency>
         <groupId>org.aspectj</groupId>
         <artifactId>aspectjweaver</artifactId>
         <version>1.9.22.1</version>
         <scope>test</scope>
      </dependency>
      <dependency>
         <groupId>ch.qos.logback</groupId>
         <artifactId>logback-classic</artifactId>
         <version>1.5.12</version>
         <scope>test</scope>
      </dependency>
   </dependencies>

   <build>
      <plugins>
         <plugin>
            <artifactId>maven-enforcer-plugin</artifactId>
            <executions>
               <execution>
                  <id>ban-duplicate-classes@validate</id>
                  <configuration>
                     <rules>
                        <banDuplicateClasses>
                           <ignoreClasses>
                              <ignoreClass>org.aspectj.*</ignoreClass>
                           </ignoreClasses>
                        </banDuplicateClasses>
                     </rules>
                  </configuration>
               </execution>
            </executions>
         </plugin>
      </plugins>
   </build>
</project>