| <?xml version="1.0" encoding="UTF-8"?> | |
| <!-- | |
| Copyright (c) 2016, 2026 Oracle and/or its affiliates. All rights reserved. | |
| 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, | |
| or the Eclipse Distribution License v. 1.0 which is available at | |
| http://www.eclipse.org/org/documents/edl-v10.php. | |
| SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause | |
| --> | |
| <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>org.eclipse.ee4j</groupId> | |
| <artifactId>project</artifactId> | |
| <version>2.0.5</version> | |
| </parent> | |
| <groupId>org.eclipse.yasson</groupId> | |
| <artifactId>yasson</artifactId> | |
| <version>3.1.0-SNAPSHOT</version> | |
| <packaging>jar</packaging> | |
| <name>Yasson</name> | |
| <description>Eclipse Yasson. Reference implementation of JSR-367 (JSON-B).</description> | |
| <url>https://projects.eclipse.org/projects/ee4j.yasson</url> | |
| <properties> | |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | |
| <maven.compiler.release>17</maven.compiler.release> | |
| <nexus.staging.repository>yasson-maven2-staging</nexus.staging.repository> | |
| <!--Dependencies--> | |
| <hamcrest.version>3.0</hamcrest.version> | |
| <!-- Jakarta API --> | |
| <!-- TODO finalize versions to EE 12 --> | |
| <jakarta.annotation-api.version>3.0.0</jakarta.annotation-api.version> | |
| <jakarta.el-api.version>6.1.0-M2</jakarta.el-api.version> | |
| <jakarta.enterprise.cdi-api.version>5.0.0</jakarta.enterprise.cdi-api.version> | |
| <jakarta.interceptor-api.version>2.2.0</jakarta.interceptor-api.version> | |
| <jakarta.json.bind.version>3.1.0-M1</jakarta.json.bind.version> | |
| <jakarta.json.version>2.1.3</jakarta.json.version> | |
| <!-- Jakarta Implementation --> | |
| <!-- TODO update to EE 12 version--> | |
| <jakarta.parson.version>1.1.9</jakarta.parson.version> | |
| <!-- Test dependencies--> | |
| <junit-jupiter.version>6.1.3</junit-jupiter.version> | |
| <weld-se-core.version>7.0.0.Final</weld-se-core.version> | |
| <!--Plugins--> | |
| <build-helper-maven-plugin.version>3.6.0</build-helper-maven-plugin.version> | |
| <buildnumber-maven-plugin.version>3.3.1</buildnumber-maven-plugin.version> | |
| <spotbugs-maven-plugin.version>4.10.4.1</spotbugs-maven-plugin.version> | |
| <glassfish-copyright-maven-plugin.version>2.4</glassfish-copyright-maven-plugin.version> | |
| <maven-bundle-plugin.version>5.1.9</maven-bundle-plugin.version> | |
| <maven-checkstyle-plugin.version>3.3.1</maven-checkstyle-plugin.version> | |
| <maven-compiler-plugin.version>3.16.0</maven-compiler-plugin.version> | |
| <maven-enforcer-plugin.version>3.4.1</maven-enforcer-plugin.version> | |
| <maven-jar-plugin.version>3.4.1</maven-jar-plugin.version> | |
| <maven-javadoc-plugin.version>3.6.3</maven-javadoc-plugin.version> | |
| <maven-surefire-plugin.version>3.5.6</maven-surefire-plugin.version> | |
| </properties> | |
| <dependencyManagement> | |
| <dependencies> | |
| <dependency> | |
| <groupId>jakarta.enterprise</groupId> | |
| <artifactId>jakarta.enterprise.cdi-api</artifactId> | |
| <version>${jakarta.enterprise.cdi-api.version}</version> | |
| </dependency> | |
| <dependency> | |
| <groupId>jakarta.el</groupId> | |
| <artifactId>jakarta.el-api</artifactId> | |
| <version>${jakarta.el-api.version}</version> | |
| </dependency> | |
| <dependency> | |
| <groupId>jakarta.interceptor</groupId> | |
| <artifactId>jakarta.interceptor-api</artifactId> | |
| <version>${jakarta.interceptor-api.version}</version> | |
| </dependency> | |
| <dependency> | |
| <groupId>jakarta.annotation</groupId> | |
| <artifactId>jakarta.annotation-api</artifactId> | |
| <version>${jakarta.annotation-api.version}</version> | |
| </dependency> | |
| </dependencies> | |
| </dependencyManagement> | |
| <dependencies> | |
| <!-- Compile dependencies --> | |
| <dependency> | |
| <groupId>jakarta.json.bind</groupId> | |
| <artifactId>jakarta.json.bind-api</artifactId> | |
| <version>${jakarta.json.bind.version}</version> | |
| </dependency> | |
| <dependency> | |
| <groupId>jakarta.json</groupId> | |
| <artifactId>jakarta.json-api</artifactId> | |
| <version>${jakarta.json.version}</version> | |
| </dependency> | |
| <dependency> | |
| <groupId>org.eclipse.parsson</groupId> | |
| <artifactId>parsson</artifactId> | |
| <version>${jakarta.parson.version}</version> | |
| </dependency> | |
| <!-- Test/Provided dependencies --> | |
| <dependency> | |
| <groupId>jakarta.enterprise</groupId> | |
| <artifactId>jakarta.enterprise.cdi-api</artifactId> | |
| <optional>true</optional> | |
| <scope>provided</scope> | |
| </dependency> | |
| <dependency> | |
| <groupId>org.jboss.weld.se</groupId> | |
| <artifactId>weld-se-core</artifactId> | |
| <version>${weld-se-core.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.junit.jupiter</groupId> | |
| <artifactId>junit-jupiter-engine</artifactId> | |
| <version>${junit-jupiter.version}</version> | |
| <scope>test</scope> | |
| </dependency> | |
| <dependency> | |
| <groupId>org.hamcrest</groupId> | |
| <artifactId>hamcrest</artifactId> | |
| <version>${hamcrest.version}</version> | |
| <scope>test</scope> | |
| </dependency> | |
| </dependencies> | |
| <organization> | |
| <name>Oracle Corporation</name> | |
| <url>http://www.oracle.com/</url> | |
| </organization> | |
| <issueManagement> | |
| <system>github</system> | |
| <url>https://github.com/eclipse-ee4j/yasson/issues</url> | |
| </issueManagement> | |
| <mailingLists> | |
| <mailingList> | |
| <name>Yasson mailing list</name> | |
| <post>yasson-dev@eclipse.org</post> | |
| <subscribe>https://dev.eclipse.org/mailman/listinfo/yasson-dev</subscribe> | |
| <unsubscribe>https://dev.eclipse.org/mailman/listinfo/yasson-dev</unsubscribe> | |
| <archive>https://dev.eclipse.org/mhonarc/lists/yasson-dev/</archive> | |
| </mailingList> | |
| </mailingLists> | |
| <licenses> | |
| <license> | |
| <name>Eclipse Public License v. 2.0</name> | |
| <url>http://www.eclipse.org/legal/epl-v20.html</url> | |
| <distribution>repo</distribution> | |
| <comments>Standard Eclipse License</comments> | |
| </license> | |
| <license> | |
| <name>Eclipse Distribution License v. 1.0</name> | |
| <url>http://www.eclipse.org/org/documents/edl-v10.php</url> | |
| <distribution>repo</distribution> | |
| <comments>Standard Eclipse Distribution License</comments> | |
| </license> | |
| </licenses> | |
| <scm> | |
| <connection>scm:git:ssh://git@github.com/eclipse-ee4j/yasson.git</connection> | |
| <developerConnection>scm:git:ssh://git@github.com/eclipse-ee4j/yasson.git</developerConnection> | |
| <url>https://github.com/eclipse-ee4j/yasson.git</url> | |
| <tag>HEAD</tag> | |
| </scm> | |
| <developers> | |
| <developer> | |
| <email>dmitry.kornilov@oracle.com</email> | |
| <id>maiden168</id> | |
| <name>Dmitry Kornilov</name> | |
| <organization>Oracle</organization> | |
| <roles> | |
| <role>JSON Binding 1.0 Spec Lead</role> | |
| </roles> | |
| <timezone>CET</timezone> | |
| </developer> | |
| <developer> | |
| <email>roman.grigoriadi@oracle.com</email> | |
| <id>roman.grigoriadi</id> | |
| <name>Roman Grigoriadi</name> | |
| <organization>Oracle</organization> | |
| <roles> | |
| <role>JSON Binding 1.0 Developer</role> | |
| </roles> | |
| <timezone>CET</timezone> | |
| </developer> | |
| <developer> | |
| <email>david.k.kral@oracle.com</email> | |
| <id>david.kral</id> | |
| <name>David Kral</name> | |
| <organization>Oracle</organization> | |
| <roles> | |
| <role>JSON Binding 1.0 Developer</role> | |
| </roles> | |
| <timezone>CET</timezone> | |
| </developer> | |
| <developer> | |
| <email>andy.guibert@gmail.com</email> | |
| <id>aguibert</id> | |
| <name>Andy Guibert</name> | |
| <organization>IBM</organization> | |
| <roles> | |
| <role>JSON Binding 1.0 Developer</role> | |
| </roles> | |
| <timezone>CST</timezone> | |
| </developer> | |
| </developers> | |
| <profiles> | |
| <profile> | |
| <id>checkstyle</id> | |
| <build> | |
| <plugins> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-checkstyle-plugin</artifactId> | |
| <executions> | |
| <execution> | |
| <id>run-checkstyle</id> | |
| <goals> | |
| <goal>check</goal> | |
| </goals> | |
| <phase>validate</phase> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| </plugins> | |
| </build> | |
| </profile> | |
| <profile> | |
| <id>spotbugs</id> | |
| <build> | |
| <plugins> | |
| <plugin> | |
| <groupId>com.github.spotbugs</groupId> | |
| <artifactId>spotbugs-maven-plugin</artifactId> | |
| <version>${spotbugs-maven-plugin.version}</version> | |
| <configuration> | |
| <threshold>Low</threshold> | |
| </configuration> | |
| <executions> | |
| <execution> | |
| <id>analyze-compile</id> | |
| <phase>compile</phase> | |
| <goals> | |
| <goal>check</goal> | |
| </goals> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| </plugins> | |
| </build> | |
| </profile> | |
| <profile> | |
| <id>copyright</id> | |
| <build> | |
| <plugins> | |
| <plugin> | |
| <groupId>org.glassfish.copyright</groupId> | |
| <artifactId>glassfish-copyright-maven-plugin</artifactId> | |
| <configuration> | |
| <!-- Ignore the year to comply with Eclipse Foundation. --> | |
| <ignoreYear>true</ignoreYear> | |
| </configuration> | |
| <executions> | |
| <!--Copyright goal does not fail when copyright is not properly updated, | |
| but prints out which file has incorrect copyright.--> | |
| <execution> | |
| <id>print-copyright</id> | |
| <goals> | |
| <goal>copyright</goal> | |
| </goals> | |
| <phase>validate</phase> | |
| </execution> | |
| <!--Check goal does not print out incorrect copyright files, but fails when there are errors.--> | |
| <execution> | |
| <id>check-copyright</id> | |
| <goals> | |
| <goal>check</goal> | |
| </goals> | |
| <phase>validate</phase> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| </plugins> | |
| </build> | |
| </profile> | |
| </profiles> | |
| <build> | |
| <finalName>${project.artifactId}</finalName> | |
| <pluginManagement> | |
| <plugins> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-compiler-plugin</artifactId> | |
| <version>${maven-compiler-plugin.version}</version> | |
| <configuration> | |
| <compilerArgs> | |
| <arg>-Xlint:all</arg> | |
| </compilerArgs> | |
| </configuration> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-jar-plugin</artifactId> | |
| <version>${maven-jar-plugin.version}</version> | |
| <configuration> | |
| <archive> | |
| <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile> | |
| <manifestEntries> | |
| <Multi-Release>true</Multi-Release> | |
| </manifestEntries> | |
| </archive> | |
| </configuration> | |
| </plugin> | |
| <plugin> | |
| <!-- This plugin generates the buildNumber property used in maven-bundle-plugin --> | |
| <groupId>org.codehaus.mojo</groupId> | |
| <artifactId>buildnumber-maven-plugin</artifactId> | |
| <version>${buildnumber-maven-plugin.version}</version> | |
| <configuration> | |
| <format>{0,date,MM/dd/yyyy hh:mm aa}</format> | |
| <items> | |
| <item>timestamp</item> | |
| </items> | |
| </configuration> | |
| <executions> | |
| <execution> | |
| <phase>validate</phase> | |
| <goals> | |
| <goal>create</goal> | |
| </goals> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-javadoc-plugin</artifactId> | |
| <version>${maven-javadoc-plugin.version}</version> | |
| <configuration> | |
| <bottom><![CDATA[Copyright © 2017, 2026 Oracle Corporation. All rights reserved.<br>]]></bottom> | |
| </configuration> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.felix</groupId> | |
| <artifactId>maven-bundle-plugin</artifactId> | |
| <version>${maven-bundle-plugin.version}</version> | |
| <executions> | |
| <execution> | |
| <id>osgi-bundle</id> | |
| <phase>prepare-package</phase> | |
| <goals> | |
| <goal>manifest</goal> | |
| </goals> | |
| <configuration> | |
| <niceManifest>true</niceManifest> | |
| <instructions> | |
| <Bundle-Name>${project.name}</Bundle-Name> | |
| <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName> | |
| <Bundle-Version>${project.version}</Bundle-Version> | |
| <Export-Package>org.eclipse.yasson;version=${project.version}</Export-Package> | |
| <Private-Package>org.eclipse.yasson.*;version=${project.version}</Private-Package> | |
| <Multi-Release>true</Multi-Release> | |
| <Import-Package> | |
| jakarta.enterprise.context.spi;version=!;resolution:="optional", | |
| jakarta.enterprise.inject.spi;version=!;resolution:="optional", | |
| javax.naming;resolution:="optional", | |
| java.beans;resolution:="optional", | |
| * | |
| </Import-Package> | |
| <Require-Capability>osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=17))"</Require-Capability> | |
| </instructions> | |
| </configuration> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-surefire-plugin</artifactId> | |
| <version>${maven-surefire-plugin.version}</version> | |
| <executions> | |
| <execution> | |
| <id>default-test</id> | |
| <phase>test</phase> | |
| <goals> | |
| <goal>test</goal> | |
| </goals> | |
| <configuration> | |
| <!-- <testFailureIgnore>true</testFailureIgnore>--> | |
| <trimStackTrace>false</trimStackTrace> | |
| <excludes> | |
| <exclude>**/JavaxNamingExcludedTest.java</exclude> | |
| <exclude>**/AnnotationIntrospectorWithoutOptionalModulesTest.java</exclude> | |
| </excludes> | |
| <argLine> | |
| <!--Remove when CDI is updated to support modules | |
| (Yasson does read CDI which is on CP, CDI access yasson's classes with reflection) | |
| --> | |
| --add-reads org.eclipse.yasson=ALL-UNNAMED --add-opens org.eclipse.yasson/org.eclipse.yasson.internal.cdi=ALL-UNNAMED | |
| --add-exports org.eclipse.yasson/org.eclipse.yasson.internal.cdi=java.naming | |
| </argLine> | |
| </configuration> | |
| </execution> | |
| <execution> | |
| <id>optional-modules-excluded</id> | |
| <phase>test</phase> | |
| <goals> | |
| <goal>test</goal> | |
| </goals> | |
| <configuration> | |
| <argLine> | |
| <!--java.management is required by Maven's ForkedBooter--> | |
| --limit-modules java.base,java.logging,java.sql,jakarta.json.bind,jakarta.json,java.management,jdk.localedata,org.eclipse.parsson,org.eclipse.yasson | |
| </argLine> | |
| <includes> | |
| <include>**/JavaxNamingExcludedTest.class</include> | |
| <include>**/AnnotationIntrospectorWithoutOptionalModulesTest.class</include> | |
| </includes> | |
| </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-versions</id> | |
| <goals> | |
| <goal>enforce</goal> | |
| </goals> | |
| </execution> | |
| </executions> | |
| <configuration> | |
| <rules> | |
| <requireJavaVersion> | |
| <version>[17,)</version> | |
| </requireJavaVersion> | |
| <requireMavenVersion> | |
| <version>[3.6.0,)</version> | |
| </requireMavenVersion> | |
| <DependencyConvergence/> | |
| </rules> | |
| </configuration> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.codehaus.mojo</groupId> | |
| <artifactId>build-helper-maven-plugin</artifactId> | |
| <version>${build-helper-maven-plugin.version}</version> | |
| <executions> | |
| <execution> | |
| <id>add-resource</id> | |
| <phase>generate-resources</phase> | |
| <goals> | |
| <goal>add-resource</goal> | |
| </goals> | |
| <configuration> | |
| <resources> | |
| <resource> | |
| <directory>${basedir}</directory> | |
| <targetPath>META-INF</targetPath> | |
| <includes> | |
| <include>LICENSE.md</include> | |
| <include>NOTICE.md</include> | |
| </includes> | |
| </resource> | |
| </resources> | |
| </configuration> | |
| </execution> | |
| </executions> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-checkstyle-plugin</artifactId> | |
| <version>${maven-checkstyle-plugin.version}</version> | |
| <configuration> | |
| <configLocation>etc/checkstyle.xml</configLocation> | |
| <suppressionsLocation>etc/checkstyle-suppressions.xml</suppressionsLocation> | |
| <consoleOutput>true</consoleOutput> | |
| <failsOnError>true</failsOnError> | |
| <linkXRef>false</linkXRef> | |
| </configuration> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.glassfish.copyright</groupId> | |
| <artifactId>glassfish-copyright-maven-plugin</artifactId> | |
| <version>${glassfish-copyright-maven-plugin.version}</version> | |
| <configuration> | |
| <templateFile>etc/copyright.txt</templateFile> | |
| <excludeFile>etc/copyright-exclude.txt</excludeFile> | |
| <scm>git</scm> | |
| <debug>false</debug> | |
| <scmOnly>true</scmOnly> | |
| <warn>true</warn> | |
| <ignoreYear>false</ignoreYear> | |
| <preserveCopyrights>true</preserveCopyrights> | |
| </configuration> | |
| </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-jar-plugin</artifactId> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.codehaus.mojo</groupId> | |
| <artifactId>buildnumber-maven-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-javadoc-plugin</artifactId> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-source-plugin</artifactId> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.maven.plugins</groupId> | |
| <artifactId>maven-enforcer-plugin</artifactId> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.codehaus.mojo</groupId> | |
| <artifactId>build-helper-maven-plugin</artifactId> | |
| </plugin> | |
| <plugin> | |
| <groupId>org.apache.felix</groupId> | |
| <artifactId>maven-bundle-plugin</artifactId> | |
| </plugin> | |
| </plugins> | |
| </build> | |
| </project> |