blob: 97ebb32fbacc2040ae680091c424f1ad6593da03 [file] [log] [blame]
<?xml version="1.0"?>
<!--
Copyright (c) 2010, 2022 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Distribution License v. 1.0, which is available at
http://www.eclipse.org/org/documents/edl-v10.php.
SPDX-License-Identifier: 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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.eclipse.ee4j</groupId>
<artifactId>project</artifactId>
<version>1.0.7</version>
<relativePath/>
</parent>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>xsom</artifactId>
<version>4.0.0-SNAPSHOT</version>
<name>XSOM</name>
<description>XML Schema Object Model (XSOM) is a Java library that allows applications to easily parse XML Schema
documents and inspect information in them. It is expected to be useful for applications that need to take XML
Schema as an input.
</description>
<url>https://eclipse-ee4j.github.io/jaxb-ri/</url>
<licenses>
<license>
<name>Eclipse Distribution License - v 1.0</name>
<url>http://www.eclipse.org/org/documents/edl-v10.php</url>
<distribution>repo</distribution>
</license>
</licenses>
<issueManagement>
<system>github</system>
<url>https://github.com/eclipse-ee4j/jaxb-ri/issues</url>
</issueManagement>
<mailingLists>
<mailingList>
<name>Jakarta XML Binding Implementation mailing list</name>
<post>jaxb-impl-dev@eclipse.org</post>
<subscribe>https://accounts.eclipse.org/mailing-list/jaxb-impl-dev</subscribe>
<unsubscribe>https://accounts.eclipse.org/mailing-list/jaxb-impl-dev</unsubscribe>
<archive>https://accounts.eclipse.org/mailing-list/jaxb-impl-dev</archive>
</mailingList>
</mailingLists>
<properties>
<copyright.exclude>tools/config/copyright-exclude</copyright.exclude>
<copyright.ignoreyear>false</copyright.ignoreyear>
<copyright.scmonly>true</copyright.scmonly>
<copyright.template>tools/config/copyright.txt</copyright.template>
<copyright.update>false</copyright.update>
<spotbugs.exclude>${project.basedir}/exclude-xsom.xml</spotbugs.exclude>
<spotbugs.skip>false</spotbugs.skip>
<spotbugs.threshold>Low</spotbugs.threshold>
<spotbugs.version>4.6.0.0</spotbugs.version>
<maven.compiler.release>11</maven.compiler.release>
<maven.compiler.testRelease>${maven.compiler.release}</maven.compiler.testRelease>
<relaxng.version>${project.version}</relaxng.version>
<junit.version>4.13.2</junit.version>
<!-- exclude big groups from the Xlint -->
<comp.xlint>-Xlint:all,-rawtypes,-unchecked</comp.xlint>
<!-- -Xdoclint:-missing does not seem to work properly on the infra -->
<comp.xdoclint>-Xdoclint:all,-missing</comp.xdoclint>
<warn.limit>150</warn.limit>
<!-- too many to fix -->
<jdoc.doclint>all,-missing</jdoc.doclint>
<!-- not interested in warnings from tests (yet) -->
<comp.test.xlint>-Xlint:none</comp.test.xlint>
<comp.test.xdoclint>-Xdoclint:none</comp.test.xdoclint>
<warn.test.limit>10</warn.test.limit>
</properties>
<dependencies>
<dependency>
<groupId>com.sun.xml.bind.external</groupId>
<artifactId>relaxng-datatype</artifactId>
<version>${relaxng.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>3.0.0</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildnumber-maven-plugin</artifactId>
<version>3.0.0</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>3.3.0</version>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>5.1.4</version>
<configuration>
<instructions>
<_noextraheaders>true</_noextraheaders>
</instructions>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.2.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.3.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.10.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M5</version>
<configuration>
<argLine>${proxyArgLine}</argLine>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>3.0.0-M2</version>
</plugin>
<plugin>
<groupId>org.glassfish.copyright</groupId>
<artifactId>glassfish-copyright-maven-plugin</artifactId>
<version>2.4</version>
<configuration>
<templateFile>${copyright.template}</templateFile>
<excludeFile>${copyright.exclude}</excludeFile>
<!-- skip files not under SCM-->
<scmOnly>${copyright.scmonly}</scmOnly>
<!-- for use with repair -->
<update>${copyright.update}</update>
<!-- check that year is correct -->
<ignoreYear>${copyright.ignoreyear}</ignoreYear>
<quiet>false</quiet>
</configuration>
</plugin>
<plugin>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-maven-plugin</artifactId>
<version>${spotbugs.version}</version>
<configuration>
<skip>${spotbugs.skip}</skip>
<threshold>${spotbugs.threshold}</threshold>
<excludeFilterFile>
${spotbugs.exclude}
</excludeFilterFile>
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<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.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<showDeprecation>true</showDeprecation>
<showWarnings>true</showWarnings>
</configuration>
<executions>
<execution>
<id>default-compile</id>
<configuration>
<compilerArgs combine.children="append">
<arg>${comp.xlint}</arg>
<arg>${comp.xdoclint}</arg>
<arg>-Xmaxwarns</arg>
<arg>${warn.limit}</arg>
<arg>-Xmaxerrs</arg>
<arg>${warn.limit}</arg>
</compilerArgs>
</configuration>
</execution>
<execution>
<id>default-testCompile</id>
<configuration>
<compilerArgs combine.children="append">
<arg>${comp.test.xlint}</arg>
<arg>${comp.test.xdoclint}</arg>
<arg>-Xmaxwarns</arg>
<arg>${warn.test.limit}</arg>
<arg>-Xmaxerrs</arg>
<arg>${warn.test.limit}</arg>
</compilerArgs>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<executions>
<execution>
<id>enforce-versions</id>
<goals>
<goal>enforce</goal>
</goals>
</execution>
</executions>
<configuration>
<rules>
<requireJavaVersion>
<version>[11,)</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>
<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.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<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>
<executions>
<execution>
<id>default-jar</id>
<configuration>
<archive>
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
<manifest>
<addDefaultEntries>false</addDefaultEntries>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
</manifest>
<manifestEntries>
<Implementation-Build-Id>${project.version} - ${buildNumber}</Implementation-Build-Id>
</manifestEntries>
</archive>
</configuration>
</execution>
</executions>
</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>${project.version} - ${buildNumber}</Implementation-Build-Id>
</manifestEntries>
</archive>
</configuration>
<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-javadoc-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addDefaultEntries>false</addDefaultEntries>
</manifest>
</archive>
<notimestamp>true</notimestamp>
<doclint>${jdoc.doclint}</doclint>
<quiet>true</quiet>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>coverage</id>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.7</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<executions>
<execution>
<id>default-prepare-agent</id>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>default-check</id>
<goals>
<goal>check</goal>
</goals>
<configuration>
<rules>
<rule>
<element>PACKAGE</element>
<limits>
<limit>
<counter>LINE</counter>
<value>COVEREDRATIO</value>
<minimum>0.45</minimum>
</limit>
</limits>
</rule>
</rules>
</configuration>
</execution>
<execution>
<id>default-report</id>
<goals>
<goal>report</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<!--
Sources in src/com/sun/xml/xsom/impl/parser/state are generated; the tool to generate those is in
original repo and isn't migrated yet. If regeneration necessary, migrate.
-->
<!--<profile>-->
<!--<id>regenerate-sources</id>-->
<!--<build>-->
<!--<plugins>-->
<!--<plugin>-->
<!--<artifactId>maven-antrun-plugin</artifactId>-->
<!--&lt;!&ndash;<version>1.1</version>&ndash;&gt;-->
<!--<executions>-->
<!--<execution>-->
<!--<phase>generate-sources</phase>-->
<!--<configuration>-->
<!--<tasks>-->
<!--<taskdef name="licence" classname="com.sun.tools.LicenceTask">-->
<!--<classpath>-->
<!--<pathelement path="lib/lic.jar" />-->
<!--</classpath>-->
<!--</taskdef>-->
<!--&lt;!&ndash;<mkdir dir="build/automata" />&ndash;&gt;-->
<!--&lt;!&ndash; delete old files to avoid corruption &ndash;&gt;-->
<!--<delete dir="src/com/sun/xml/xsom/impl/parser/state" />-->
<!--<mkdir dir="src/com/sun/xml/xsom/impl/parser/state" />-->
<!--<property name="relaxngcc-jar" value="lib/relaxngcc.jar" />-->
<!--<java jar="${relaxngcc-jar}" fork="true">-->
<!--<arg value="- - target" />-->
<!--<arg path="src/com/sun/xml/xsom/impl/parser/state" />-->
<!--<arg path="src/xmlschema.rng" />-->
<!--</java>-->
<!--<licence licence="licenceheader.txt">-->
<!--<fileset dir="src/" includes="com/sun/xml/xsom/impl/parser/state/*.java" />-->
<!--</licence>-->
<!--</tasks>-->
<!--</configuration>-->
<!--<goals>-->
<!--<goal>run</goal>-->
<!--</goals>-->
<!--</execution>-->
<!--</executions>-->
<!--</plugin>-->
<!--</plugins>-->
<!--</build>-->
<!--</profile>-->
</profiles>
</project>