blob: a188d3cd6894fc8beaed5e98c723fc474a1a9d82 [file] [edit]
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2011, 2026 Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2026 Contributors to the Eclipse Foundation
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
http://www.eclipse.org/legal/epl-2.0.
This Source Code may also be made available under the following Secondary
Licenses when the conditions for such availability set forth in the
Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
version 2 with the GNU Classpath Exception, which is available at
https://www.gnu.org/software/classpath/license.html.
SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>jakarta.json</groupId>
<artifactId>jakarta.json-parent</artifactId>
<version>2.2.0-SNAPSHOT</version>
</parent>
<artifactId>jakarta.json-api</artifactId>
<name>Jakarta JSON Processing API</name>
<description>
Jakarta JSON Processing defines a Java(R) based framework
for parsing, generating, transforming, and querying JSON documents.
</description>
<properties>
<non.final>false</non.final>
<spec.version>2.2</spec.version>
<vendor.name>Eclipse Foundation</vendor.name>
<copyright.exclude>${project.basedir}/../etc/copyright-exclude</copyright.exclude>
<copyright.templatefile>${project.basedir}/../etc/copyright.txt</copyright.templatefile>
<copyright.ignoreyear>true</copyright.ignoreyear>
<copyright.scmonly>true</copyright.scmonly>
<copyright.update>false</copyright.update>
<spotbugs.exclude>${project.basedir}/../etc/spotbugs-exclude.xml</spotbugs.exclude>
<spotbugs.skip>false</spotbugs.skip>
<spotbugs.threshold>Low</spotbugs.threshold>
<legal.doc.source>${project.basedir}/..</legal.doc.source>
</properties>
<build>
<plugins>
<plugin>
<!-- e.g. mvn validate glassfish-copyright:repair -->
<groupId>org.glassfish.copyright</groupId>
<artifactId>glassfish-copyright-maven-plugin</artifactId>
<configuration>
<excludeFile>${copyright.exclude}</excludeFile>
<scmOnly>${copyright.scmonly}</scmOnly>
<update>${copyright.update}</update>
<ignoreYear>${copyright.ignoreyear}</ignoreYear>
<quiet>false</quiet>
</configuration>
<executions>
<execution>
<phase>verify</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildnumber-maven-plugin</artifactId>
<executions>
<execution>
<id>validate</id>
<phase>validate</phase>
<goals>
<goal>create</goal>
</goals>
<configuration>
<getRevisionOnlyOnce>true</getRevisionOnlyOnce>
<shortRevisionLength>7</shortRevisionLength>
<revisionOnScmFailure>false</revisionOnScmFailure>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>add-legal-resource</id>
<phase>generate-resources</phase>
<goals>
<goal>add-resource</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>${legal.doc.source}</directory>
<includes>
<include>NOTICE.md</include>
<include>LICENSE.md</include>
</includes>
<targetPath>META-INF</targetPath>
</resource>
</resources>
</configuration>
</execution>
<execution>
<id>currentyear-property</id>
<goals>
<goal>timestamp-property</goal>
</goals>
<phase>validate</phase>
<configuration>
<name>current.year</name>
<locale>en,US</locale>
<pattern>yyyy</pattern>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<createMissingPackageInfoClass>false</createMissingPackageInfoClass>
<compilerArgs>
<arg>-Xlint:all</arg>
<arg>-Xdoclint:all</arg>
</compilerArgs>
<showDeprecation>true</showDeprecation>
</configuration>
</plugin>
<plugin>
<groupId>org.glassfish.build</groupId>
<artifactId>spec-version-maven-plugin</artifactId>
<configuration>
<spec>
<nonFinal>${non.final}</nonFinal>
<jarType>api</jarType>
<specVersion>${spec.version}</specVersion>
<specImplVersion>${project.version}</specImplVersion>
<apiPackage>${project.groupId}</apiPackage>
</spec>
</configuration>
<executions>
<execution>
<goals>
<goal>set-spec-properties</goal>
<goal>check-module</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<configuration>
<instructions>
<Bundle-Version>${spec.bundle.version}</Bundle-Version>
<Bundle-SymbolicName>${spec.bundle.symbolic-name}</Bundle-SymbolicName>
<Extension-Name>${spec.extension.name}</Extension-Name>
<Implementation-Version>${spec.implementation.version}</Implementation-Version>
<Specification-Version>${spec.specification.version}</Specification-Version>
<Bundle-Description>Jakarta JSON Processing API ${spec.version}</Bundle-Description>
<Specification-Vendor>${vendor.name}</Specification-Vendor>
<Implementation-Build-Id>${buildNumber}</Implementation-Build-Id>
<DynamicImport-Package>*</DynamicImport-Package>
<Import-Package>
!org.glassfish.hk2.osgiresourcelocator,
!org.eclipse.parsson,
*
</Import-Package>
<!-- optional to allow usage with hk2 resource locator as a fallback -->
<Require-Capability><![CDATA[
osgi.extender;filter:="(&(osgi.extender=osgi.serviceloader.processor)
(version>=1.0.0)(!(version>=2.0.0)))";resolution:=optional,
osgi.serviceloader;
filter:="(osgi.serviceloader=jakarta.json.spi.JsonProvider)";
osgi.serviceloader="jakarta.json.spi.JsonProvider";
cardinality:=multiple;resolution:=optional
]]>
</Require-Capability>
</instructions>
</configuration>
<executions>
<execution>
<id>bundle-manifest</id>
<phase>process-classes</phase>
<goals>
<goal>manifest</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addDefaultEntries>false</addDefaultEntries>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
</manifest>
<manifestEntries>
<Implementation-Build-Id>${buildNumber}</Implementation-Build-Id>
</manifestEntries>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addDefaultEntries>false</addDefaultEntries>
</manifest>
</archive>
<release>11</release>
<notimestamp>true</notimestamp>
<docfilessubdirs>true</docfilessubdirs>
<description>JSON Processing API documentation</description>
<doctitle>JSON Processing API documentation</doctitle>
<windowtitle>JSON Processing API documentation</windowtitle>
<header><![CDATA[<br>JSON Processing API v${project.version}]]></header>
<bottom><![CDATA[
Comments to: <a href="mailto:jsonp-dev@eclipse.org">jsonp-dev@eclipse.org</a>.<br>
Copyright &#169; 2019, ${current.year} Eclipse Foundation. All rights reserved.<br>
Use is subject to <a href="{@docRoot}/doc-files/speclicense.html" target="_top">license terms</a>.]]>
</bottom>
<quiet>true</quiet>
<failOnWarnings>true</failOnWarnings>
</configuration>
</plugin>
<plugin>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
<excludeFilterFile>${spotbugs.exclude}</excludeFilterFile>
<failThreshold>High</failThreshold>
</configuration>
</plugin>
</plugins>
</build>
</project>