ao-payments-api
Used in
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>com.aoapps</groupId> <artifactId>ao-payments-api</artifactId> <version>3.0.0</version> </dependency>
<?xml version="1.0" encoding="UTF-8"?> <!-- ao-payments-api - Payment processing API supporting multiple payment gateways. Copyright (C) 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 AO Industries, Inc. support@aoindustries.com 7262 Bull Pen Cir Mobile, AL 36695 This file is part of ao-payments-api. ao-payments-api is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. ao-payments-api is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with ao-payments-api. If not, see <https://www.gnu.org/licenses/>. --> <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>com.aoapps</groupId><artifactId>ao-oss-parent</artifactId><version>1.21.0<!-- -POST-SNAPSHOT --></version> <relativePath>../../parent/pom.xml</relativePath> </parent> <groupId>com.aoapps</groupId><artifactId>ao-payments-api</artifactId><version>3.0.0</version> <packaging>bundle</packaging> <properties> <project.build.outputTimestamp>2023-02-11T20:09:23Z</project.build.outputTimestamp> <module.name>com.aoapps.payments.api</module.name> <javadoc.breadcrumbs><![CDATA[<a target="${javadoc.target}" href="https://oss.aoapps.com/">AO OSS</a> / <a target="${javadoc.target}" href="https://oss.aoapps.com/payments/">Payments</a> / <a target="${javadoc.target}" href="${project.url}">API</a>]]></javadoc.breadcrumbs> <!-- SonarQube --> <sonar.projectKey>${project.groupId}:${project.artifactId}</sonar.projectKey> <sonar.organization>ao-apps</sonar.organization> <sonar.host.url>https://sonarcloud.io</sonar.host.url> <!-- Dependencies --> <commons-lang3.version>3.12.0</commons-lang3.version> </properties> <name>AO Payments API</name> <url>https://oss.aoapps.com/payments/api/</url> <description>Payment processing API supporting multiple payment gateways.</description> <inceptionYear>2007</inceptionYear> <licenses> <license> <name>GNU General Lesser Public License (LGPL) version 3.0</name> <url>https://www.gnu.org/licenses/lgpl-3.0.txt</url> <distribution>repo</distribution> </license> </licenses> <organization> <name>AO Industries, Inc.</name> <url>https://aoindustries.com/</url> </organization> <developers> <developer> <name>AO Industries, Inc.</name> <email>support@aoindustries.com</email> <url>https://aoindustries.com/</url> <organization>AO Industries, Inc.</organization> <organizationUrl>https://aoindustries.com/</organizationUrl> </developer> </developers> <scm> <connection>scm:git:git://github.com/ao-apps/ao-payments-api.git</connection> <developerConnection>scm:git:git@github.com:ao-apps/ao-payments-api.git</developerConnection> <url>https://github.com/ao-apps/ao-payments-api</url> <tag>ao-payments-api-3.0.0</tag> </scm> <issueManagement> <system>GitHub Issues</system> <url>https://github.com/ao-apps/ao-payments-api/issues</url> </issueManagement> <ciManagement> <system>Jenkins</system> <url>https://jenkins.aoindustries.com/job/ao/job/oss/job/payments/job/api/</url> </ciManagement> <!-- Only one allowed in POM: <ciManagement> <system>GitHub Actions</system> <url>https://github.com/ao-apps/ao-payments-api/actions</url> </ciManagement> --> <repositories> <!-- Repository required here, too, so can find parent --> <repository> <id>sonatype-nexus-snapshots-s01</id> <name>Sonatype Nexus Snapshots S01</name> <url>https://s01.oss.sonatype.org/content/repositories/snapshots</url> <releases> <enabled>false</enabled> </releases> <snapshots> <checksumPolicy>fail</checksumPolicy> </snapshots> </repository> </repositories> <build> <resources> <!-- Default Resources --> <resource> <directory>src/main/resources</directory> </resource> <resource> <directory>src/main/resources-filtered</directory> <filtering>true</filtering> </resource> <!-- Additional Resources --> <resource> <directory>src/main/sql</directory> <!-- Packaged as "sql" artifact below --> <excludes><exclude>**</exclude></excludes> </resource> </resources> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId><artifactId>maven-resources-plugin</artifactId> <executions> <execution> <id>sql-resources</id><phase>process-resources</phase><goals><goal>copy-resources</goal></goals> <configuration> <resources> <resource> <directory>src/main/sql</directory> </resource> </resources> <outputDirectory>${project.build.directory}/sql</outputDirectory> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId> <executions> <execution> <id>sql-jar</id><phase>package</phase><goals><goal>jar</goal></goals> <configuration> <classesDirectory>${project.build.directory}/sql</classesDirectory> <!-- Could pull directly from source, without above sql-resources, but this seems to match Maven style better: <classesDirectory>src/main/sql</classesDirectory> --> <classifier>sql</classifier> </configuration> </execution> </executions> </plugin> <plugin> <groupId>com.github.spotbugs</groupId><artifactId>spotbugs-maven-plugin</artifactId> <configuration> <!-- TODO: Clean-up SpotBugs --> <failOnError>false</failOnError> </configuration> </plugin> </plugins> </build> <profiles> <profile> <id>offlineLinks</id><activation><file><exists>src/main/java</exists></file></activation> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId><artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>unpack.offlineLinks</id><phase>prepare-package</phase><goals><goal>unpack</goal></goals> <configuration> <artifactItems> <!-- Direct --> <artifactItem> <groupId>com.aoapps</groupId><artifactId>ao-collections</artifactId><classifier>javadoc</classifier> <includes>element-list, package-list</includes> <outputDirectory>${project.build.directory}/offlineLinks/com.aoapps/ao-collections</outputDirectory> </artifactItem> <artifactItem> <groupId>com.aoapps</groupId><artifactId>ao-lang</artifactId><classifier>javadoc</classifier> <includes>element-list, package-list</includes> <outputDirectory>${project.build.directory}/offlineLinks/com.aoapps/ao-lang</outputDirectory> </artifactItem> <artifactItem> <groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><classifier>javadoc</classifier> <includes>element-list, package-list</includes> <outputDirectory>${project.build.directory}/offlineLinks/org.apache.commons/commons-lang3</outputDirectory> </artifactItem> <artifactItem> <groupId>commons-validator</groupId><artifactId>commons-validator</artifactId><classifier>javadoc</classifier> <includes>element-list, package-list</includes> <outputDirectory>${project.build.directory}/offlineLinks/commons-validator/commons-validator</outputDirectory> </artifactItem> <!-- Test Direct --> <artifactItem> <groupId>junit</groupId><artifactId>junit</artifactId><classifier>javadoc</classifier> <includes>element-list, package-list</includes> <outputDirectory>${project.build.directory}/offlineLinks/junit/junit</outputDirectory> </artifactItem> </artifactItems> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId><artifactId>maven-javadoc-plugin</artifactId> <configuration> <offlineLinks combine.children="append"> <!-- Direct --> <offlineLink> <url>https://oss.aoapps.com/collections/apidocs/</url> <location>${project.build.directory}/offlineLinks/com.aoapps/ao-collections</location> </offlineLink> <offlineLink> <url>https://oss.aoapps.com/lang/apidocs/</url> <location>${project.build.directory}/offlineLinks/com.aoapps/ao-lang</location> </offlineLink> <offlineLink> <url>https://javadoc.io/doc/org.apache.commons/commons-lang3/${commons-lang3.version}/</url> <location>${project.build.directory}/offlineLinks/org.apache.commons/commons-lang3</location> </offlineLink> <offlineLink> <url>https://commons.apache.org/proper/commons-validator/apidocs/</url> <location>${project.build.directory}/offlineLinks/commons-validator/commons-validator</location> </offlineLink> <!-- Test Direct --> <offlineLink> <url>https://junit.org/junit4/javadoc/latest/</url> <location>${project.build.directory}/offlineLinks/junit/junit</location> </offlineLink> </offlineLinks> </configuration> </plugin> </plugins> </build> </profile> <profile> <id>release</id> <properties> <!-- Releases use "Automatic-Module-Name" instead of "module-info.java" since has direct dependencies that are not yet modularized. Newer plugins are failing on release builds: error: -\-add-modules ALL-MODULE-PATH can only be used when compiling the unnamed module or when compiling in the context of an automatic module This is caused by the project being detected as a modular build, despite the exclusions via Private-Package and the added Automatic-Module-Name manifest entry. Specifically exclusing module-info.java from javadoc does not solve the issue. Could be related: https://issues.apache.org/jira/browse/MJAVADOC-586 https://bugs.openjdk.org/browse/JDK-8252531 (we also run javadoc in package phase) Workaround by using old version of maven-javadoc-plugin also used by reactor builds. --> <maven-javadoc-plugin.version>${maven-javadoc-plugin.version.reactor}</maven-javadoc-plugin.version> <copy-element-list-to-package-list-before-javadoc.phase>prepare-package</copy-element-list-to-package-list-before-javadoc.phase> </properties> <build> <plugins> <plugin> <groupId>org.apache.felix</groupId><artifactId>maven-bundle-plugin</artifactId> <configuration> <instructions> <!-- Releases use "Automatic-Module-Name" instead of "module-info.java" since has direct dependencies that are not yet modularized. --> <Automatic-Module-Name>${module.name}</Automatic-Module-Name> <Private-Package>!.</Private-Package> </instructions> </configuration> </plugin> </plugins> </build> </profile> </profiles> <dependencyManagement> <dependencies> <!-- Direct --> <dependency> <groupId>com.aoapps</groupId><artifactId>ao-collections</artifactId><version>3.0.0<!-- ${POST-SNAPSHOT} --></version> </dependency> <dependency> <groupId>com.aoapps</groupId><artifactId>ao-lang</artifactId><version>5.3.0<!-- ${POST-SNAPSHOT} --></version> </dependency> <dependency> <groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>${commons-lang3.version}</version> </dependency> <dependency> <groupId>commons-validator</groupId><artifactId>commons-validator</artifactId><version>1.7</version> </dependency> <!-- Transitive --> <dependency> <groupId>commons-beanutils</groupId><artifactId>commons-beanutils</artifactId><version>1.9.4</version> </dependency> <dependency> <groupId>commons-collections</groupId><artifactId>commons-collections</artifactId><version>3.2.2</version> </dependency> <dependency> <groupId>commons-digester</groupId><artifactId>commons-digester</artifactId><version>2.1</version> </dependency> <dependency> <groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>1.2</version> </dependency> <!-- Test Direct --> <dependency> <groupId>junit</groupId><artifactId>junit</artifactId><version>4.13.2</version> </dependency> <!-- Test Transitive --> <dependency> <groupId>org.hamcrest</groupId><artifactId>hamcrest</artifactId><version>2.2</version> </dependency> <dependency> <!-- Shim for junit 4.13.2 --> <groupId>org.hamcrest</groupId><artifactId>hamcrest-core</artifactId><version>2.2</version> </dependency> </dependencies> </dependencyManagement> <dependencies> <!-- Direct --> <dependency> <groupId>com.aoapps</groupId><artifactId>ao-collections</artifactId> </dependency> <dependency> <groupId>com.aoapps</groupId><artifactId>ao-lang</artifactId> </dependency> <dependency> <groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId> </dependency> <dependency> <groupId>commons-validator</groupId><artifactId>commons-validator</artifactId> </dependency> <!-- Test Direct --> <dependency> <groupId>junit</groupId><artifactId>junit</artifactId> <scope>test</scope> </dependency> </dependencies> </project>