java-parent
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>com.sap.cloud.environment.servicebinding</groupId>
<artifactId>java-parent</artifactId>
<version>0.31.0</version>
</dependency><?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.sap.cloud.environment.servicebinding</groupId>
<artifactId>java-parent</artifactId>
<version>0.31.0</version>
<packaging>pom</packaging>
<name>java-parent</name>
<description>Java Client Library to access BTP environment service bindings</description>
<url>https://github.com/SAP/btp-environment-variable-access</url>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
</license>
</licenses>
<developers>
<developer>
<name>BTP Development</name>
<email />
<organization>SAP SE</organization>
<organizationUrl>https://www.sap.com</organizationUrl>
</developer>
</developers>
<modules>
<module>api-parent</module>
<module>bom</module>
<module>modules-bom</module>
<module>sap-service-operator</module>
<module>sap-vcap-services</module>
<module>sap-spring-properties</module>
</modules>
<scm>
<connection>scm:git:https://github.com/SAP/btp-environment-variable-access.git</connection>
<developerConnection>scm:git:https://github.com/SAP/btp-environment-variable-access.git</developerConnection>
<url>https://github.com/SAP/btp-environment-variable-access</url>
</scm>
<properties>
<java.version>17</java.version>
<maven.version>3.8</maven.version>
<java.failOnWarning>true</java.failOnWarning>
<project.rootdir>${project.basedir}</project.rootdir>
<project.build.resourceEncoding>UTF-8</project.build.resourceEncoding>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<cloud-environment.version>0.31.0</cloud-environment.version>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<jsr305.version>3.0.2</jsr305.version>
<slf4j-simple.version>2.0.17</slf4j-simple.version>
<junit-jupiter.version>6.0.3</junit-jupiter.version>
<assertj-core.version>3.27.7</assertj-core.version>
<mockito-core.version>4.11.0</mockito-core.version>
<maven-compiler-plugin.version>3.15.0</maven-compiler-plugin.version>
<maven-resources-plugin.version>3.5.0</maven-resources-plugin.version>
<maven-source-plugin.version>3.4.0</maven-source-plugin.version>
<maven-javadoc-plugin.version>3.12.0</maven-javadoc-plugin.version>
<maven-gpg-plugin.version>3.2.8</maven-gpg-plugin.version>
<nexus-staging-maven-plugin.version>1.7.0</nexus-staging-maven-plugin.version>
<dependency-check-maven-plugin.version>12.2.1</dependency-check-maven-plugin.version>
<sortpom-maven-plugin.version>2.15.0</sortpom-maven-plugin.version>
<formatter-maven-plugin.version>2.16.0</formatter-maven-plugin.version>
<impsort-maven-plugin.version>1.6.2</impsort-maven-plugin.version>
<maven-enforcer-plugin.version>3.6.2</maven-enforcer-plugin.version>
<maven-dependency-plugin.version>3.10.0</maven-dependency-plugin.version>
<maven-surefire-plugin.version>3.5.5</maven-surefire-plugin.version>
</properties>
<dependencyManagement>
<dependencies>
<!-- Scope: Import -->
<dependency>
<groupId>com.sap.cloud.environment.servicebinding</groupId>
<artifactId>java-bom</artifactId>
<version>${cloud-environment.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- Scope: Test -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>${slf4j-simple.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>${junit-jupiter.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>${junit-jupiter.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<version>${assertj-core.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>${mockito-core.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<!-- Scope: Compile -->
<!-- for @Nonnull and @Nullable annotations, not required transitively -->
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
<version>${jsr305.version}</version>
<optional>true</optional>
</dependency>
</dependencies>
<build>
<resources>
<resource>
<directory>${project.basedir}/src/main/resources</directory>
</resource>
<!-- include LICENSE in all jar files -->
<resource>
<filtering>false</filtering>
<directory>${project.rootdir}</directory>
<includes>
<include>LICENSE</include>
</includes>
</resource>
</resources>
<testResources>
<testResource>
<directory>${project.basedir}/src/test/resources</directory>
</testResource>
</testResources>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven-compiler-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>${maven-resources-plugin.version}</version>
<configuration>
<addDefaultExcludes>false</addDefaultExcludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>${maven-source-plugin.version}</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.github.ekryd.sortpom</groupId>
<artifactId>sortpom-maven-plugin</artifactId>
<version>${sortpom-maven-plugin.version}</version>
<executions>
<execution>
<id>sort-all-poms</id>
<phase>process-sources</phase>
<goals>
<goal>sort</goal>
</goals>
</execution>
</executions>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
<createBackupFile>false</createBackupFile>
<expandEmptyElements>false</expandEmptyElements>
<nrOfIndentSpace>4</nrOfIndentSpace>
<sortDependencies>none</sortDependencies>
<sortPlugins>none</sortPlugins>
<sortProperties>false</sortProperties>
<sortModules>false</sortModules>
<keepBlankLines>true</keepBlankLines>
</configuration>
</plugin>
<plugin>
<groupId>net.revelc.code.formatter</groupId>
<artifactId>formatter-maven-plugin</artifactId>
<version>${formatter-maven-plugin.version}</version>
<executions>
<execution>
<phase>process-sources</phase>
<goals>
<goal>format</goal>
</goals>
</execution>
</executions>
<configuration>
<configFile>${project.rootdir}/.codestyle/eclipse-codestyle.xml</configFile>
<encoding>${project.build.sourceEncoding}</encoding>
<directories>
<directory>${project.basedir}/src/main/java</directory>
<directory>${project.basedir}/src/test/java</directory>
</directories>
</configuration>
</plugin>
<plugin>
<groupId>net.revelc.code</groupId>
<artifactId>impsort-maven-plugin</artifactId>
<version>${impsort-maven-plugin.version}</version>
<executions>
<execution>
<id>sort-imports</id>
<goals>
<goal>sort</goal>
</goals>
</execution>
</executions>
<configuration>
<skip>true</skip>
<!-- GitHub Actions pipeline is currently failing for this plugin. -->
<groups>java.,javax.,org.,com.</groups>
<staticGroups>java,*</staticGroups>
<staticAfter>true</staticAfter>
<removeUnused>true</removeUnused>
<excludes>
<exclude>**/test/resources/**</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.owasp</groupId>
<!--scans for vulnerabilities-->
<artifactId>dependency-check-maven</artifactId>
<version>${dependency-check-maven-plugin.version}</version>
<configuration>
<connectionTimeout>60000</connectionTimeout>
<nvdMaxRetryCount>20</nvdMaxRetryCount>
<failBuildOnCVSS>7</failBuildOnCVSS>
<nvdApiKeyEnvironmentVariable>NVD_API_KEY</nvdApiKeyEnvironmentVariable>
<suppressionFile>.etc/suppression.xml</suppressionFile>
<nvdValidForHours>46</nvdValidForHours>
<skipProvidedScope>true</skipProvidedScope>
<ossIndexServerId>ossindex</ossIndexServerId>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${maven-javadoc-plugin.version}</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>${maven-gpg-plugin.version}</version>
<extensions>true</extensions>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<configuration>
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>${maven-enforcer-plugin.version}</version>
<executions>
<execution>
<id>enforce-project-rules</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireMavenVersion>
<version>${maven.version}</version>
</requireMavenVersion>
<requireJavaVersion>
<version>${java.version}</version>
</requireJavaVersion>
<banDuplicatePomDependencyVersions />
<dependencyConvergence />
</rules>
</configuration>
</execution>
<execution>
<id>ban-deprecated-dependencies</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<bannedDependencies>
<message>Do not use deprecated dependencies.</message>
</bannedDependencies>
</rules>
</configuration>
</execution>
<execution>
<id>ban-logging-frameworks</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<bannedDependencies>
<message>Do not use and do exclude all transitive uses of logging frameworks.</message>
<excludes>
<exclude>org.slf4j:slf4j-simple</exclude>
<exclude>commons-logging</exclude>
<exclude>ch.qos.logback</exclude>
<exclude>org.apache.logging.log4j</exclude>
<exclude>org.apache.log4j</exclude>
<exclude>log4j</exclude>
<exclude>org.tinylog</exclude>
</excludes>
<includes>
<include>org.slf4j:slf4j-simple:*:*:test</include>
</includes>
</bannedDependencies>
</rules>
</configuration>
</execution>
<execution>
<id>enforce-scope-logger-bridges</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<bannedDependencies>
<message>Logger bridges must use scope runtime or test.</message>
<excludes>
<exclude>org.slf4j:jul-to-slf4j</exclude>
<exclude>org.slf4j:jcl-over-slf4j</exclude>
<exclude>org.slf4j:log4j-over-slf4j</exclude>
</excludes>
<includes>
<include>org.slf4j:jul-to-slf4j:*:*:runtime</include>
<include>org.slf4j:jul-to-slf4j:*:*:test</include>
<include>org.slf4j:jcl-over-slf4j:*:*:runtime</include>
<include>org.slf4j:jcl-over-slf4j:*:*:test</include>
<include>org.slf4j:log4j-over-slf4j:*:*:runtime</include>
<include>org.slf4j:log4j-over-slf4j:*:*:test</include>
</includes>
</bannedDependencies>
</rules>
</configuration>
</execution>
</executions>
<configuration>
<fail>true</fail>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>${maven-dependency-plugin.version}</version>
<executions>
<execution>
<id>analyze</id>
<phase>process-test-classes</phase>
<goals>
<goal>analyze-only</goal>
</goals>
</execution>
<execution>
<id>analyze-dep-mgt</id>
<phase>process-test-classes</phase>
<goals>
<goal>analyze-dep-mgt</goal>
</goals>
</execution>
<execution>
<id>analyze-duplicate</id>
<phase>process-test-classes</phase>
<goals>
<goal>analyze-duplicate</goal>
</goals>
</execution>
</executions>
<configuration>
<failOnWarning>true</failOnWarning>
<failBuild>true</failBuild>
<ignoreNonCompile>true</ignoreNonCompile>
<ignoredUnusedDeclaredDependencies>
<dependency>org.slf4j:slf4j-simple</dependency>
</ignoredUnusedDeclaredDependencies>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire-plugin.version}</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
</plugin>
<plugin>
<groupId>com.github.ekryd.sortpom</groupId>
<artifactId>sortpom-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>net.revelc.code.formatter</groupId>
<artifactId>formatter-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>net.revelc.code</groupId>
<artifactId>impsort-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.owasp</groupId>
<artifactId>dependency-check-maven</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>release</id>
<activation>
<property>
<name>release</name>
</property>
</activation>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>3.1.4</version>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<version>0.10.0</version>
<extensions>true</extensions>
<configuration>
<publishingServerId>central</publishingServerId>
<autoPublish>true</autoPublish>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>