| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to you 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. |
| --> |
| <!-- |
| Maven release plugin requires the project tag to be on a single line. |
| --> |
| <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.apache.bval</groupId> |
| <artifactId>bval-parent</artifactId> |
| <version>2.0.5-SNAPSHOT</version> |
| </parent> |
| |
| <artifactId>bval-jsr</artifactId> |
| <name>Apache BVal :: bval-jsr</name> |
| <packaging>jar</packaging> |
| |
| <description>Implementation specific classes for JSR 380 Bean Validation 2.0</description> |
| |
| <properties> |
| <jaxb.version>2.2.6</jaxb.version> |
| </properties> |
| <profiles> |
| |
| <profile> |
| <id>java11</id> |
| <activation> |
| <jdk>11</jdk> |
| </activation> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.geronimo.specs</groupId> |
| <artifactId>geronimo-activation_1.1_spec</artifactId> |
| <version>1.1</version> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>javax.xml.bind</groupId> |
| <artifactId>jaxb-api</artifactId> |
| <version>2.3.0</version> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>com.sun.xml.bind</groupId> |
| <artifactId>jaxb-core</artifactId> |
| <version>2.3.0</version> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.openjfx</groupId> |
| <artifactId>javafx-base</artifactId> |
| <version>11</version> |
| <scope>provided</scope> |
| </dependency> |
| </dependencies> |
| </profile> |
| <!-- |
| default profile using geronimo-validation_2.0_spec.jar active when |
| property "ri" is not present. |
| --> |
| <profile> |
| <id>geronimo</id> |
| <activation> |
| <property> |
| <name>!ri</name> |
| </property> |
| </activation> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.geronimo.specs</groupId> |
| <artifactId>geronimo-validation_2.0_spec</artifactId> |
| <scope>provided</scope> |
| </dependency> |
| </dependencies> |
| </profile> |
| <!-- |
| optional profile using javax.validation/validation-api.jar from RI |
| manually active when property "-Dri" is provided. |
| --> |
| <profile> |
| <id>ri</id> |
| <activation> |
| <property> |
| <name>ri</name> |
| </property> |
| </activation> |
| <dependencies> |
| <dependency> |
| <groupId>javax.validation</groupId> |
| <artifactId>validation-api</artifactId> |
| <!-- allow users to choose an API provider --> |
| <scope>provided</scope> |
| </dependency> |
| </dependencies> |
| </profile> |
| <profile> |
| <id>sec</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-resources-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>default-testResources</id> |
| <phase /> |
| <goals> |
| <goal>testResources</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>filter-testResources</id> |
| <phase>process-test-resources</phase> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| <configuration> |
| <target> |
| <mkdir dir="${project.build.testOutputDirectory}" /> |
| <condition property="slash" value="/" else=""> |
| <os family="windows" /> |
| </condition> |
| <copy todir="${project.build.testOutputDirectory}" overwrite="true"> |
| <fileset dir="${project.basedir}/src/test/resources" excludes="java.policy" /> |
| </copy> |
| <copy todir="${project.build.testOutputDirectory}" overwrite="true"> |
| <fileset file="${project.basedir}/src/test/resources/java.policy" /> |
| <filterchain> |
| <expandproperties /> |
| <!-- append extra slash on windows only --> |
| <replacestring from="file://" to="file://${slash}" /> |
| <replacestring from="${file.separator}" to="/" /> |
| </filterchain> |
| </copy> |
| </target> |
| </configuration> |
| </execution> |
| </executions> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.ant</groupId> |
| <artifactId>ant</artifactId> |
| <version>1.9.3</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <configuration> |
| <includes> |
| <include>**/*Test.java</include> |
| <include>**/*TestCase.java</include> |
| </includes> |
| <argLine>-Djava.security.manager -Djava.security.policy=${project.build.testOutputDirectory}/java.policy</argLine> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-weaver-privilizer-api</artifactId> |
| </dependency> |
| <!-- optional dependencies --> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-lang3</artifactId> |
| <scope>provided</scope> |
| <optional>true</optional> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.geronimo.specs</groupId> |
| <artifactId>geronimo-jpa_2.0_spec</artifactId> |
| <!-- allow users to choose an API provider --> |
| <scope>provided</scope> |
| <optional>true</optional> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.geronimo.specs</groupId> |
| <artifactId>geronimo-jcdi_2.0_spec</artifactId> |
| <version>1.0</version> |
| <scope>provided</scope> |
| <optional>true</optional> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.tomcat</groupId> |
| <artifactId>tomcat-el-api</artifactId> |
| <optional>true</optional> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.geronimo.specs</groupId> |
| <artifactId>geronimo-annotation_1.3_spec</artifactId> |
| <version>1.0</version> |
| <scope>provided</scope> |
| <optional>true</optional> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.geronimo.specs</groupId> |
| <artifactId>geronimo-interceptor_1.2_spec</artifactId> |
| <version>1.0</version> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.geronimo.specs</groupId> |
| <artifactId>geronimo-atinject_1.0_spec</artifactId> |
| <version>1.0</version> |
| <scope>provided</scope> |
| </dependency> |
| |
| <!-- Testing dependencies --> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-core</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.tomcat</groupId> |
| <artifactId>tomcat-jasper-el</artifactId> |
| <version>9.0.12</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.glassfish</groupId> |
| <artifactId>javax.el</artifactId> |
| <version>3.0.1-b10</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>de.odysseus.juel</groupId> |
| <artifactId>juel-api</artifactId> |
| <version>2.2.7</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>de.odysseus.juel</groupId> |
| <artifactId>juel-impl</artifactId> |
| <version>2.2.7</version> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.hibernate</groupId> |
| <artifactId>hibernate-validator</artifactId> |
| <version>6.1.5.Final</version> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.openjdk.jmh</groupId> |
| <artifactId>jmh-core</artifactId> |
| <version>1.25.2</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.openjdk.jmh</groupId> |
| <artifactId>jmh-generator-annprocess</artifactId> |
| <version>1.25.2</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>com.github.biboudis</groupId> |
| <artifactId>jmh-profilers</artifactId> |
| <version>0.1.4</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| |
| <build> |
| <defaultGoal>install</defaultGoal> |
| |
| <resources> |
| <resource> |
| <directory>src/main/resources</directory> |
| <filtering>true</filtering> |
| </resource> |
| <resource> |
| <directory>src/main/xsd</directory> |
| <targetPath>META-INF</targetPath> |
| </resource> |
| </resources> |
| |
| <plugins> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>jaxb2-maven-plugin</artifactId> |
| <version>2.4</version> |
| <executions> |
| <execution> |
| <goals> |
| <goal>xjc</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <packageName>org.apache.bval.jsr.xml</packageName> |
| <extension>true</extension> |
| <enableIntrospection>true</enableIntrospection> |
| <sources> |
| <source>${project.basedir}/src/main/xsd/validation-configuration-2.0.xsd</source> |
| <source>${project.basedir}/src/main/xsd/validation-mapping-2.0.xsd</source> |
| </sources> |
| </configuration> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.geronimo.specs</groupId> |
| <artifactId>geronimo-activation_1.1_spec</artifactId> |
| <version>1.1</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| |
| <!-- create mainClass attribute --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jar-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>default-jar</id> |
| <goals> |
| <goal>jar</goal> |
| </goals> |
| <configuration> |
| <archive> |
| <manifest> |
| <addDefaultImplementationEntries>true</addDefaultImplementationEntries> |
| <mainClass>org.apache.bval.util.BValVersion</mainClass> |
| </manifest> |
| </archive> |
| </configuration> |
| </execution> |
| <execution> |
| <id>test-jar</id> |
| <phase>package</phase> |
| <goals> |
| <goal>test-jar</goal> |
| </goals> |
| <inherited>false</inherited> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <configuration> |
| <includes> |
| <include>**/*Test.java</include> |
| <include>**/*TestCase.java</include> |
| </includes> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-weaver-maven-plugin</artifactId> |
| </plugin> |
| <!-- |
| get the project version |
| and set it in a properties file for later retrieval |
| --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>set version info</id> |
| <phase>compile</phase> |
| <configuration> |
| <target> |
| <echo>Version: ${project.version}</echo> |
| <echo>Date: ${timestamp}</echo> |
| <mkdir dir="${project.build.outputDirectory}/META-INF" /> |
| <echo file="${project.build.outputDirectory}/META-INF/org.apache.bval.revision.properties"> |
| # Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0 |
| project.name=Apache BVal |
| project.version=${project.version} |
| build.timestamp=${timestamp} |
| </echo> |
| </target> |
| </configuration> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-shade-plugin</artifactId> |
| <version>3.2.1</version> |
| <executions> |
| <execution> |
| <phase>package</phase> |
| <goals> |
| <goal>shade</goal> |
| </goals> |
| <configuration> |
| <shadedArtifactAttached>true</shadedArtifactAttached> |
| <shadedClassifierName>jakarta</shadedClassifierName> |
| <createDependencyReducedPom>false</createDependencyReducedPom> |
| <transformers> |
| <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" /> |
| </transformers> |
| <artifactSet> <!-- don't include transitive deps --> |
| <includes> |
| <include>${project.groupId}:${project.artifactId}</include> |
| </includes> |
| </artifactSet> |
| <relocations> |
| <relocation> |
| <pattern>javax.annotation</pattern> |
| <shadedPattern>jakarta.annotation</shadedPattern> |
| </relocation> |
| <relocation> |
| <pattern>javax.el</pattern> |
| <shadedPattern>jakarta.el</shadedPattern> |
| </relocation> |
| <relocation> |
| <pattern>javax.enterprise</pattern> |
| <shadedPattern>jakarta.enterprise</shadedPattern> |
| </relocation> |
| <relocation> |
| <pattern>javax.inject</pattern> |
| <shadedPattern>jakarta.inject</shadedPattern> |
| </relocation> |
| <relocation> |
| <pattern>javax.interceptor</pattern> |
| <shadedPattern>jakarta.interceptor</shadedPattern> |
| </relocation> |
| <relocation> |
| <pattern>javax.validation</pattern> |
| <shadedPattern>jakarta.validation</shadedPattern> |
| </relocation> |
| <relocation> |
| <pattern>javax.persistence</pattern> |
| <shadedPattern>jakarta.persistence</shadedPattern> |
| </relocation> |
| </relocations> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <configuration> |
| <source>9</source> |
| <target>9</target> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| </project> |