norconex-commons-lang
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>com.norconex.commons</groupId>
<artifactId>norconex-commons-lang</artifactId>
<version>2.2.1</version>
</dependency><!--
Copyright 2010-2022 Norconex Inc.
Licensed 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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.norconex.commons</groupId>
<artifactId>norconex-commons-lang</artifactId>
<version>2.2.1</version>
<packaging>jar</packaging>
<name>Norconex Commons Lang</name>
<inceptionYear>2008</inceptionYear>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<java.version>17</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<site.baseurl></site.baseurl>
<commons-io.version>2.21.0</commons-io.version>
<commons-lang3.version>3.20.0</commons-lang3.version>
<commons-text.version>1.15.0</commons-text.version>
<commons-collections4.version>4.5.0</commons-collections4.version>
<velocity-engine.version>2.4.1</velocity-engine.version>
<slf4j.version>2.0.17</slf4j.version>
<xerces.version>2.12.1</xerces.version>
<xpath2.version>2.1.100</xpath2.version>
<java-cup.version>10k</java-cup.version>
<json.version>1.8</json.version>
<junit-jupiter.version>5.12.2</junit-jupiter.version>
<log4j.version>2.25.3</log4j.version>
<ant.version>1.10.11</ant.version>
<jaxb-runtime.version>2.3.5</jaxb-runtime.version>
<maven-compiler-plugin.version>3.8.0</maven-compiler-plugin.version>
<license-maven-plugin.version>1.17</license-maven-plugin.version>
<maven-remote-resources-plugin.version>1.6.0</maven-remote-resources-plugin.version>
<maven-assembly-plugin.version>3.1.1</maven-assembly-plugin.version>
<maven-dependency-plugin.version>3.1.2</maven-dependency-plugin.version>
<maven-javadoc-plugin.version>3.10.0</maven-javadoc-plugin.version>
<maven-source-plugin.version>3.0.1</maven-source-plugin.version>
<maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
<maven-gpg-plugin.version>1.6</maven-gpg-plugin.version>
<central-publishing-maven-plugin.version>0.10.0</central-publishing-maven-plugin.version>
<maven-surefire-plugin.version>3.2.5</maven-surefire-plugin.version>
<sun-jaxb-impl.version>4.0.5</sun-jaxb-impl.version>
</properties>
<dependencies>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>${commons-io.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>${commons-lang3.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-text</artifactId>
<version>${commons-text.version}</version>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>${velocity-engine.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-collections4</artifactId>
<version>${commons-collections4.version}</version>
</dependency>
<dependency>
<groupId>org.imgscalr</groupId>
<artifactId>imgscalr-lib</artifactId>
<version>4.2</version>
</dependency>
<dependency>
<groupId>org.exist-db.thirdparty.xerces</groupId>
<artifactId>xercesImpl</artifactId>
<version>${xerces.version}</version>
<classifier>xml-schema-1.1</classifier>
<exclusions>
<exclusion>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.rackspace.eclipse.webtools.sourceediting</groupId>
<artifactId>org.eclipse.wst.xml.xpath2.processor</artifactId>
<version>${xpath2.version}</version>
</dependency>
<dependency>
<groupId>edu.princeton.cup</groupId>
<artifactId>java-cup</artifactId>
<version>${java-cup.version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.tdunning</groupId>
<artifactId>json</artifactId>
<version>${json.version}</version>
</dependency>
<!-- Tests and provided. -->
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>${junit-jupiter.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>${log4j.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>${log4j.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
<version>${ant.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>${slf4j.version}</version>
<scope>test</scope>
</dependency>
<!--
<dependency>
<groupId>jakarta.xml.bind</groupId>
<artifactId>jakarta.xml.bind-api</artifactId>
</dependency>
-->
<!-- That's OK, it's a "public" SUN API: -->
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>${sun-jaxb-impl.version}</version>
<scope>runtime</scope>
</dependency>
<!-- JAXB Runtime -->
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
<version>${jaxb-runtime.version}</version>
</dependency>
<!--
NOTE:
For optional ProxySettings class features used only by some
implementations, you may need to include a version of the following:
-->
<!--
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
</dependency>
-->
<!-- For Javadoc Custom Taglets -->
<dependency>
<groupId>com.github.olivergondza</groupId>
<artifactId>maven-jdk-tools-wrapper</artifactId>
<version>0.1</version>
</dependency>
</dependencies>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>src/main/java</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
</resources>
<testResources>
<testResource>
<directory>src/test/resources</directory>
</testResource>
<testResource>
<directory>src/test/java</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</testResource>
</testResources>
<!-- TODO get rid of most of this if inherited from parent.
TODO do we need inherited flag in a few places?
-->
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven-compiler-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>license-maven-plugin</artifactId>
<version>${license-maven-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-remote-resources-plugin</artifactId>
<version>${maven-remote-resources-plugin.version}</version>
</plugin>
<!-- To Skip: -Dassembly.skipAssembly=true -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>${maven-assembly-plugin.version}</version>
<executions>
<execution>
<id>make-resources-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptors>
<descriptor>src/main/assembly/resources.xml</descriptor>
</descriptors>
<appendAssemblyId>true</appendAssemblyId>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>${maven-dependency-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${maven-javadoc-plugin.version}</version>
<configuration>
<failOnError>false</failOnError>
<failOnWarning>false</failOnWarning>
<quiet>true</quiet>
<options>
<option>-Xdoclint:none</option>
</options>
</configuration>
<executions>
<execution>
<id>attach-javadocs</id>
<phase>prepare-package</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</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>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>${maven-jar-plugin.version}</version>
</plugin>
<!-- Use VM argument -Dgpg.skip=true to disable GPG signing. -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>${maven-gpg-plugin.version}</version>
<!-- Central REJECTS unsigned artifacts. Declaring the plugin alone
does nothing: without an <executions> binding it to the verify
phase, "sign" never runs and deploy uploads unsigned files, which
is exactly what happened on the first release attempt of 2.2.1. -->
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<configuration>
<!-- Needed so gpg does not try to use the pinentry programs,
which have no terminal to prompt on in CI. -->
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<version>${central-publishing-maven-plugin.version}</version>
<!-- extensions=true is what binds this plugin into the deploy
lifecycle. Without it the plugin is inert and "mvn deploy" falls
through to maven-deploy-plugin, which then PUTs at whatever
distributionManagement/repository says. -->
<extensions>true</extensions>
<configuration>
<publishingServerId>central</publishingServerId>
<!-- Staged, not auto-published: the deployment lands in the Central
Portal as VALIDATED and a human presses Publish. This matches how
the V3 stack has always released, and a Maven Central release can
never be withdrawn. waitUntil=validated still makes the build fail
here if Central rejects the artifacts, so problems surface in CI
rather than at the moment of publishing. Flip to autoPublish=true
with waitUntil=published to release without the manual step. -->
<autoPublish>false</autoPublish>
<waitUntil>validated</waitUntil>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire-plugin.version}</version>
</plugin>
</plugins>
</build>
<!-- Only used to publish javadoc with "site:deploy",
after they were generated -->
<distributionManagement>
<snapshotRepository>
<id>central</id>
<url>https://central.sonatype.com/repository/maven-snapshots/</url>
</snapshotRepository>
<site>
<id>norconex-site-deployment</id>
<url>${site.baseurl}/commons/lang/v2</url>
</site>
</distributionManagement>
<url>https://opensource.norconex.com/commons/lang</url>
<description>
Norconex Commons Lang is a Java library containing utility classes that
complements the Java API and are not found in commonly available
libraries (such as the great Apache Commons Lang, which it relies on).
</description>
<!-- Until 2.2.0 these three came from norconex-commons-maven-parent.
That parent was dropped deliberately to make this module standalone,
which also dropped the inherited metadata. Maven Central REQUIRES
<licenses> and <developers> on every published artifact, so they are
declared here rather than inherited. -->
<organization>
<name>Norconex Inc.</name>
<url>https://norconex.com</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
</license>
</licenses>
<developers>
<developer>
<id>essiembre</id>
<name>Pascal Essiembre</name>
<email>pascal.essiembre@norconex.com</email>
<organization>Norconex Inc.</organization>
<organizationUrl>https://norconex.com</organizationUrl>
<roles>
<role>project leader</role>
<role>developer</role>
</roles>
<timezone>-4</timezone>
</developer>
</developers>
<scm>
<url>https://github.com/Norconex/commons-lang</url>
<connection>scm:git:git@github.com:Norconex/commons-lang.git</connection>
<developerConnection>scm:git:git@github.com:Norconex/commons-lang.git</developerConnection>
</scm>
<issueManagement>
<system>GitHub</system>
<url>https://github.com/Norconex/commons-lang/issues</url>
</issueManagement>
</project>