ao-encoding
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>com.aoapps</groupId>
<artifactId>ao-encoding</artifactId>
<version>7.1.0</version>
</dependency><?xml version="1.0" encoding="UTF-8"?>
<!--
ao-encoding - High performance streaming character encoding.
Copyright (C) 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026 AO Industries, Inc.
support@aoindustries.com
7262 Bull Pen Cir
Mobile, AL 36695
This file is part of ao-encoding.
ao-encoding 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-encoding 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-encoding. 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.25.1<!-- -POST-SNAPSHOT --></version>
<relativePath>../parent/pom.xml</relativePath>
</parent>
<groupId>com.aoapps</groupId><artifactId>ao-encoding</artifactId><version>7.1.0</version>
<packaging>jar</packaging>
<properties>
<!-- Must be set to ${git.commit.time} for snapshots or ISO 8601 timestamp for releases. -->
<project.build.outputTimestamp>2026-01-30T13:18:45Z</project.build.outputTimestamp>
<module.name>com.aoapps.encoding</module.name>
<javadoc.breadcrumbs><![CDATA[<a target="${javadoc.target}" href="https://oss.aoapps.com/">AO OSS</a>
/ <a target="${javadoc.target}" href="${project.url}">Encoding</a>]]></javadoc.breadcrumbs>
<javadoc.modules><![CDATA[<div>
<h2>Modules</h2>
<ul>
<li><a target="${javadoc.target}" href="https://oss.aoapps.com/encoding/servlet/">AO Encoding Servlet</a></li>
<li><a target="${javadoc.target}" href="https://oss.aoapps.com/encoding/taglib/">AO Encoding Taglib</a></li>
</ul>
</div>]]></javadoc.modules>
</properties>
<name>AO Encoding</name>
<url>https://oss.aoapps.com/encoding/</url>
<description>High performance streaming character encoding.</description>
<inceptionYear>2009</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-encoding.git</connection>
<developerConnection>scm:git:git@github.com:ao-apps/ao-encoding.git</developerConnection>
<url>https://github.com/ao-apps/ao-encoding</url>
<tag>ao-encoding-7.1.0</tag>
</scm>
<issueManagement>
<system>GitHub Issues</system>
<url>https://github.com/ao-apps/ao-encoding/issues</url>
</issueManagement>
<ciManagement>
<system>Jenkins</system>
<url>https://jenkins.aoindustries.com/job/ao/job/oss/job/encoding/</url>
</ciManagement>
<!-- Only one allowed in POM:
<ciManagement>
<system>GitHub Actions</system>
<url>https://github.com/ao-apps/ao-encoding/actions</url>
</ciManagement>
-->
<repositories>
<!-- Repository required here, too, so can find parent -->
<repository>
<id>central-snapshots</id>
<name>Central Snapshot Repository</name>
<url>https://central.sonatype.com/repository/maven-snapshots/</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<checksumPolicy>fail</checksumPolicy>
</snapshots>
</repository>
</repositories>
<build>
<plugins>
<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>${unpack.offlineLinks.phase}</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-hodgepodge</artifactId><classifier>javadoc</classifier>
<includes>element-list, package-list</includes>
<outputDirectory>${project.build.directory}/offlineLinks/com.aoapps/ao-hodgepodge</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>com.google.code.findbugs</groupId><artifactId>jsr305</artifactId><classifier>javadoc</classifier>
<includes>element-list, package-list</includes>
<outputDirectory>${project.build.directory}/offlineLinks/com.google.code.findbugs/jsr305</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/hodgepodge/apidocs/</url>
<location>${project.build.directory}/offlineLinks/com.aoapps/ao-hodgepodge</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/com.google.code.findbugs/jsr305/${com.google.code.findbugs:jsr305:jar.version}/</url>
<location>${project.build.directory}/offlineLinks/com.google.code.findbugs/jsr305</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>
<!--
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 excluding 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.
-->
<org.apache.maven.plugins.maven-javadoc-plugin.version>${org.apache.maven.plugins.maven-javadoc-plugin.version.compat}</org.apache.maven.plugins.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:
jsr305-3.0.2.jar
-->
<Automatic-Module-Name>${module.name}</Automatic-Module-Name>
<Private-Package>!.</Private-Package>
</instructions>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/module-info.class</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<dependencyManagement>
<dependencies>
<!-- Direct -->
<dependency>
<groupId>com.aoapps</groupId><artifactId>ao-collections</artifactId><version>4.0.0<!-- ${POST-SNAPSHOT} --></version>
</dependency>
<dependency>
<groupId>com.aoapps</groupId><artifactId>ao-hodgepodge</artifactId><version>5.3.0<!-- ${POST-SNAPSHOT} --></version>
</dependency>
<dependency>
<groupId>com.aoapps</groupId><artifactId>ao-lang</artifactId><version>5.7.0<!-- ${POST-SNAPSHOT} --></version>
</dependency>
<dependency>
<groupId>com.google.code.findbugs</groupId><artifactId>jsr305</artifactId><version>3.0.2</version>
</dependency>
<!-- Transitive -->
<dependency>
<groupId>com.aoapps</groupId><artifactId>ao-tempfiles</artifactId><version>3.1.0<!-- ${POST-SNAPSHOT} --></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>3.0</version>
</dependency>
<dependency>
<!-- Shim for junit 4.13.2 -->
<groupId>org.hamcrest</groupId><artifactId>hamcrest-core</artifactId><version>3.0</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<!-- Direct -->
<dependency>
<groupId>com.aoapps</groupId><artifactId>ao-collections</artifactId>
</dependency>
<dependency>
<groupId>com.aoapps</groupId><artifactId>ao-hodgepodge</artifactId>
</dependency>
<dependency>
<groupId>com.aoapps</groupId><artifactId>ao-lang</artifactId>
</dependency>
<dependency>
<groupId>com.google.code.findbugs</groupId><artifactId>jsr305</artifactId>
<optional>true</optional>
</dependency>
<!-- Test Direct -->
<dependency>
<groupId>junit</groupId><artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>