| <?xml version="1.0" encoding="UTF-8"?> | 
 | <!-- | 
 |  | 
 |     Copyright (c) 2012, 2024 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. | 
 |  | 
 |     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>org.glassfish.jersey.bundles</groupId> | 
 |         <artifactId>project</artifactId> | 
 |         <version>3.0.99-SNAPSHOT</version> | 
 |     </parent> | 
 |  | 
 |     <artifactId>jaxrs-ri</artifactId> | 
 |     <name>jersey-bundles-jaxrs-ri</name> | 
 |     <packaging>bundle</packaging> | 
 |  | 
 |     <description> | 
 |         A bundle project producing JAX-RS RI bundles. The primary artifact is an "all-in-one" OSGi-fied JAX-RS RI bundle | 
 |         (jaxrs-ri.jar). | 
 |         Attached to that are two compressed JAX-RS RI archives. The first archive (jaxrs-ri.zip) consists of binary RI bits and | 
 |         contains the API jar (under "api" directory), RI libraries (under "lib" directory) as well as all external | 
 |         RI dependencies (under "ext" directory). The secondary archive (jaxrs-ri-src.zip) contains buildable JAX-RS RI source | 
 |         bundle and contains the API jar (under "api" directory), RI sources (under "src" directory) as well as all external | 
 |         RI dependencies (under "ext" directory). The second archive also contains "build.xml" ANT script that builds the RI | 
 |         sources. To build the JAX-RS RI simply unzip the archive, cd to the created jaxrs-ri directory and invoke "ant" from | 
 |         the command line. | 
 |     </description> | 
 |  | 
 |     <dependencies> | 
 |         <!-- JAX-RS API Sources--> | 
 |         <dependency> | 
 |             <groupId>jakarta.ws.rs</groupId> | 
 |             <artifactId>jakarta.ws.rs-api</artifactId> | 
 |             <version>${jaxrs.api.impl.version}</version> | 
 |             <classifier>sources</classifier> | 
 |             <scope>provided</scope> | 
 |         </dependency> | 
 |  | 
 |         <!-- JAX-RS RI Binaries --> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.inject</groupId> | 
 |             <artifactId>jersey-hk2</artifactId> | 
 |             <version>${project.version}</version> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.core</groupId> | 
 |             <artifactId>jersey-common</artifactId> | 
 |             <version>${project.version}</version> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.media</groupId> | 
 |             <artifactId>jersey-media-jaxb</artifactId> | 
 |             <version>${project.version}</version> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.media</groupId> | 
 |             <artifactId>jersey-media-json-binding</artifactId> | 
 |             <version>${project.version}</version> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.core</groupId> | 
 |             <artifactId>jersey-client</artifactId> | 
 |             <version>${project.version}</version> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.core</groupId> | 
 |             <artifactId>jersey-server</artifactId> | 
 |             <version>${project.version}</version> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.containers</groupId> | 
 |             <artifactId>jersey-container-servlet-core</artifactId> | 
 |             <version>${project.version}</version> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.containers</groupId> | 
 |             <artifactId>jersey-container-servlet</artifactId> | 
 |             <version>${project.version}</version> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.media</groupId> | 
 |             <artifactId>jersey-media-sse</artifactId> | 
 |             <version>${project.version}</version> | 
 |         </dependency> | 
 |  | 
 |         <!-- JAX-RS RI Sources --> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.inject</groupId> | 
 |             <artifactId>jersey-hk2</artifactId> | 
 |             <version>${project.version}</version> | 
 |             <classifier>sources</classifier> | 
 |             <optional>true</optional> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.core</groupId> | 
 |             <artifactId>jersey-common</artifactId> | 
 |             <version>${project.version}</version> | 
 |             <classifier>sources</classifier> | 
 |             <optional>true</optional> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.media</groupId> | 
 |             <artifactId>jersey-media-jaxb</artifactId> | 
 |             <version>${project.version}</version> | 
 |             <classifier>sources</classifier> | 
 |             <optional>true</optional> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.core</groupId> | 
 |             <artifactId>jersey-client</artifactId> | 
 |             <version>${project.version}</version> | 
 |             <classifier>sources</classifier> | 
 |             <optional>true</optional> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.core</groupId> | 
 |             <artifactId>jersey-server</artifactId> | 
 |             <version>${project.version}</version> | 
 |             <classifier>sources</classifier> | 
 |             <optional>true</optional> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.containers</groupId> | 
 |             <artifactId>jersey-container-servlet-core</artifactId> | 
 |             <version>${project.version}</version> | 
 |             <classifier>sources</classifier> | 
 |             <optional>true</optional> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.jersey.containers</groupId> | 
 |             <artifactId>jersey-container-servlet</artifactId> | 
 |             <version>${project.version}</version> | 
 |             <classifier>sources</classifier> | 
 |             <optional>true</optional> | 
 |         </dependency> | 
 |  | 
 |         <!-- RI dependencies --> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.hk2</groupId> | 
 |             <artifactId>hk2-api</artifactId> | 
 |             <scope>provided</scope> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.glassfish.hk2</groupId> | 
 |             <artifactId>hk2-locator</artifactId> | 
 |             <scope>provided</scope> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>org.osgi</groupId> | 
 |             <artifactId>org.osgi.core</artifactId> | 
 |             <scope>provided</scope> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>jakarta.xml.bind</groupId> | 
 |             <artifactId>jakarta.xml.bind-api</artifactId> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>jakarta.annotation</groupId> | 
 |             <artifactId>jakarta.annotation-api</artifactId> | 
 |             <scope>provided</scope> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>jakarta.validation</groupId> | 
 |             <artifactId>jakarta.validation-api</artifactId> | 
 |             <scope>provided</scope> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>jakarta.servlet</groupId> | 
 |             <artifactId>jakarta.servlet-api</artifactId> | 
 |             <version>${servlet5.version}</version> | 
 |             <scope>provided</scope> | 
 |         </dependency> | 
 |         <dependency> | 
 |             <groupId>jakarta.persistence</groupId> | 
 |             <artifactId>jakarta.persistence-api</artifactId> | 
 |             <scope>provided</scope> | 
 |         </dependency> | 
 |     </dependencies> | 
 |  | 
 |     <build> | 
 |         <finalName>jaxrs-ri</finalName> | 
 |         <resources> | 
 |             <resource> | 
 |                 <directory>${generated.src.dir}</directory> | 
 |                 <excludes> | 
 |                     <exclude>**/*.java</exclude> | 
 |                 </excludes> | 
 |                 <filtering>true</filtering> | 
 |             </resource> | 
 |         </resources> | 
 |         <plugins> | 
 |             <plugin> | 
 |                 <groupId>org.apache.maven.plugins</groupId> | 
 |                 <artifactId>maven-compiler-plugin</artifactId> | 
 |                 <inherited>false</inherited> | 
 |                 <configuration> | 
 |                     <source>${java.version}</source> | 
 |                     <target>${java.version}</target> | 
 |                     <compilerArguments> | 
 |                         <!-- Do not warn about using sun.misc.Unsafe --> | 
 |                         <XDignore.symbol.file /> | 
 |                     </compilerArguments> | 
 |                     <showWarnings>false</showWarnings> | 
 |                     <fork>false</fork> | 
 |                     <excludes> | 
 |                         <exclude>module-info.java</exclude><exclude>META-INF/versions/11/**</exclude> | 
 |                     </excludes> | 
 |                 </configuration> | 
 |             </plugin> | 
 |             <!-- producing single jar bundle --> | 
 |             <plugin> | 
 |                 <groupId>org.codehaus.mojo</groupId> | 
 |                 <artifactId>build-helper-maven-plugin</artifactId> | 
 |                 <executions> | 
 |                     <execution> | 
 |                         <phase>generate-sources</phase> | 
 |                         <goals> | 
 |                             <goal>add-source</goal> | 
 |                         </goals> | 
 |                         <configuration> | 
 |                             <sources> | 
 |                                 <source>${generated.src.dir}</source> | 
 |                             </sources> | 
 |                         </configuration> | 
 |                     </execution> | 
 |                 </executions> | 
 |             </plugin> | 
 |             <plugin> | 
 |                 <groupId>org.apache.maven.plugins</groupId> | 
 |                 <artifactId>maven-dependency-plugin</artifactId> | 
 |                 <executions> | 
 |                     <execution> | 
 |                         <id>unpack</id> | 
 |                         <phase>generate-sources</phase> | 
 |                         <goals> | 
 |                             <goal>unpack-dependencies</goal> | 
 |                         </goals> | 
 |                         <configuration> | 
 |                             <includeGroupIds>jakarta.ws.rs,org.glassfish.jersey.core,org.glassfish.jersey.containers,org.glassfish.jersey.jaxb,org.glassfish.jersey.inject</includeGroupIds> | 
 |                             <includeClassifiers>sources</includeClassifiers> | 
 |                             <outputDirectory>${generated.src.dir}</outputDirectory> | 
 |                             <excludes>**/NOTICE.md,**/NOTICE.markdown</excludes> | 
 |                         </configuration> | 
 |                     </execution> | 
 |                 </executions> | 
 |             </plugin> | 
 |             <plugin> | 
 |                 <groupId>org.apache.felix</groupId> | 
 |                 <artifactId>maven-bundle-plugin</artifactId> | 
 |                 <configuration> | 
 |                     <instructions> | 
 |                         <Bundle-Name>${project.artifactId}</Bundle-Name> | 
 |                         <Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName> | 
 |                         <Specification-Version>${jaxrs.api.spec.version}</Specification-Version> | 
 |                         <Implementation-Version> | 
 |                             ${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.qualifier} | 
 |                         </Implementation-Version> | 
 |                         <Extension-Name>${project.artifactId}</Extension-Name> | 
 |                         <Export-Package> | 
 |                             jakarta.ws.rs.*;version=${jaxrs.api.impl.version}, | 
 |                             org.glassfish.jersey.*;version=${project.version}, | 
 |                             com.sun.research.ws.wadl.*;version=${project.version}, | 
 |                             jersey.repackaged.org.objectweb.asm.*;version=${project.version} | 
 |                         </Export-Package> | 
 |                         <Import-Package><![CDATA[ | 
 |                             jakarta.servlet.annotation.*;resolution:=optional;version="[5.0,6.0)", | 
 |                             jakarta.servlet.descriptor.*;resolution:=optional;version="[5.0,6.0)", | 
 |                             jakarta.servlet.*;version="[5.0,6.0)", | 
 |                             ${jakarta.annotation.osgi.version}, | 
 |                             jakarta.persistence.*;resolution:=optional, | 
 |                             jakarta.validation.*;resolution:=optional;version="[3,4)", | 
 |                             sun.misc.*;resolution:=optional, | 
 |                             jakarta.activation.*;version="!";resolution:=optional, | 
 |                             javax.imageio;resolution:=optional, | 
 |                             javax.imageio.spi;resolution:=optional, | 
 |                             javax.imageio.stream;resolution:=optional, | 
 |                             jakarta.xml.bind;version="!";resolution:=optional, | 
 |                             jakarta.xml.bind.annotation;version="!";resolution:=optional, | 
 |                             jakarta.xml.bind.annotation.adapters;version="!";resolution:=optional, | 
 |                             javax.xml.namespace;resolution:=optional, | 
 |                             javax.xml.parsers;resolution:=optional, | 
 |                             javax.xml.transform;resolution:=optional, | 
 |                             javax.xml.transform.dom;resolution:=optional, | 
 |                             javax.xml.transform.sax;resolution:=optional, | 
 |                             javax.xml.transform.stream;resolution:=optional, | 
 |                             org.w3c.dom;resolution:=optional, | 
 |                             org.xml.sax;resolution:=optional, | 
 |                             ${hk2.osgi.version}, | 
 |                             * | 
 |                         ]]></Import-Package> | 
 |                         <Private-Package> | 
 |                             com.sun.research.ws.wadl | 
 |                         </Private-Package> | 
 |                         <Multi-Release>true</Multi-Release> | 
 |                     </instructions> | 
 |                     <unpackBundle>true</unpackBundle> | 
 |                     <excludeDependencies>*;scope=compile</excludeDependencies> | 
 |                 </configuration> | 
 |             </plugin> | 
 |             <plugin> | 
 |                 <groupId>org.apache.maven.plugins</groupId> | 
 |                 <artifactId>maven-shade-plugin</artifactId> | 
 |                 <executions> | 
 |                     <execution> | 
 |                         <phase>package</phase> | 
 |                         <goals> | 
 |                             <goal>shade</goal> | 
 |                         </goals> | 
 |                         <configuration> | 
 |                             <filters> | 
 |                                 <filter> | 
 |                                     <artifact>*:*</artifact> <!-- jersey artifacts --> | 
 |                                     <excludes> | 
 |                                         <exclude>META-INF/NOTICE.md</exclude> | 
 |                                         <exclude>META-INF/NOTICE.markdown</exclude> | 
 |                                     </excludes> | 
 |                                 </filter> | 
 |                                 <filter> | 
 |                                     <artifact>*:*</artifact> <!-- 3rd party artifacts --> | 
 |                                     <excludes> | 
 |                                         <exclude>META-INF/DEPENDENCIES.txt</exclude> | 
 |                                         <exclude>META-INF/LICENSE.md</exclude> | 
 |                                         <exclude>jakarta/annotation/**</exclude> | 
 |                                         <exclude>jakarta/decorator/**</exclude> | 
 |                                         <exclude>jakarta/el/**</exclude> | 
 |                                         <exclude>jakarta/enterprise/**</exclude> | 
 |                                         <exclude>jakarta/interceptor/**</exclude> | 
 |                                     </excludes> | 
 |                                 </filter> | 
 |                             </filters> | 
 |                         </configuration> | 
 |                     </execution> | 
 |                 </executions> | 
 |             </plugin> | 
 |             <!-- producing zipped archives --> | 
 |             <plugin> | 
 |                 <groupId>org.apache.maven.plugins</groupId> | 
 |                 <artifactId>maven-assembly-plugin</artifactId> | 
 |                 <executions> | 
 |                     <execution> | 
 |                         <id>make-binary-archive</id> | 
 |                         <phase>package</phase> | 
 |                         <goals> | 
 |                             <goal>single</goal> | 
 |                         </goals> | 
 |                         <configuration> | 
 |                             <descriptors> | 
 |                                 <descriptor>${project.basedir}/src/main/assembly/assembly-bin.xml</descriptor> | 
 |                             </descriptors> | 
 |                             <appendAssemblyId>false</appendAssemblyId> | 
 |                         </configuration> | 
 |                     </execution> | 
 |                     <execution> | 
 |                         <id>make-source-archive</id> | 
 |                         <phase>package</phase> | 
 |                         <goals> | 
 |                             <goal>single</goal> | 
 |                         </goals> | 
 |                         <configuration> | 
 |                             <descriptors> | 
 |                                 <descriptor>${project.basedir}/src/main/assembly/assembly-src.xml</descriptor> | 
 |                             </descriptors> | 
 |                         </configuration> | 
 |                     </execution> | 
 |                 </executions> | 
 |             </plugin> | 
 |             <plugin> | 
 |                 <groupId>org.apache.maven.plugins</groupId> | 
 |                 <artifactId>maven-antrun-plugin</artifactId> | 
 |                 <executions> | 
 |                     <execution> | 
 |                         <id>xcopy</id> | 
 |                         <phase>package</phase> | 
 |                         <configuration> | 
 |                             <target> | 
 |                                 <jar destfile="${project.build.directory}/${project.artifactId}.jar" update="true"> | 
 |                                     <zipfileset dir="../.." includes="NOTICE.md" prefix="META-INF" /> | 
 |                                 </jar> | 
 |                                 <jar destfile="${project.build.directory}/${project.artifactId}-sources.jar" update="true"> | 
 |                                     <zipfileset dir="../.." includes="NOTICE.md" prefix="META-INF" /> | 
 |                                 </jar> | 
 |                                 <jar destfile="${project.build.directory}/${project.artifactId}.jar" update="true"> | 
 |                                     <zipfileset dir="../.." includes="LICENSE.md" prefix="META-INF" /> | 
 |                                 </jar> | 
 |                             </target> | 
 |                         </configuration> | 
 |                         <goals> | 
 |                             <goal>run</goal> | 
 |                         </goals> | 
 |                     </execution> | 
 |                 </executions> | 
 |             </plugin> | 
 |         </plugins> | 
 |     </build> | 
 |  | 
 |     <profiles> | 
 |         <profile> | 
 |             <id>licensee.src.bundle</id> | 
 |             <activation> | 
 |                 <property> | 
 |                     <name>license.url</name> | 
 |                 </property> | 
 |             </activation> | 
 |             <build> | 
 |                 <plugins> | 
 |                     <plugin> | 
 |                         <groupId>org.codehaus.mojo</groupId> | 
 |                         <artifactId>wagon-maven-plugin</artifactId> | 
 |                         <version>1.0-beta-4</version> | 
 |                         <inherited>false</inherited> | 
 |                         <executions> | 
 |                             <execution> | 
 |                                 <id>get-license</id> | 
 |                                 <phase>package</phase> | 
 |                                 <goals> | 
 |                                     <goal>download-single</goal> | 
 |                                 </goals> | 
 |                                 <configuration> | 
 |                                     <url>${license.url}</url> | 
 |                                     <fromFile>TLDA_SCSL_Licensees_License_Notice.txt</fromFile> | 
 |                                     <toDir>${project.build.directory}/license</toDir> | 
 |                                 </configuration> | 
 |                             </execution> | 
 |                         </executions> | 
 |                     </plugin> | 
 |                     <plugin> | 
 |                         <groupId>org.apache.maven.plugins</groupId> | 
 |                         <artifactId>maven-assembly-plugin</artifactId> | 
 |                         <inherited>false</inherited> | 
 |                         <executions> | 
 |                             <execution> | 
 |                                 <id>make-licensee-source-archive</id> | 
 |                                 <phase>package</phase> | 
 |                                 <goals> | 
 |                                     <goal>single</goal> | 
 |                                 </goals> | 
 |                                 <configuration> | 
 |                                     <finalName>jaxrs-ri-${project.version}-src-licensee</finalName> | 
 |                                     <attach>false</attach> | 
 |                                     <appendAssemblyId>false</appendAssemblyId> | 
 |                                     <descriptors> | 
 |                                         <descriptor>${project.basedir}/src/main/assembly/assembly-src-licensee.xml</descriptor> | 
 |                                     </descriptors> | 
 |                                 </configuration> | 
 |                             </execution> | 
 |                         </executions> | 
 |                     </plugin> | 
 |                 </plugins> | 
 |             </build> | 
 |         </profile> | 
 |     </profiles> | 
 |  | 
 |     <properties> | 
 |         <generated.src.dir>${basedir}/target/unpacked-src/main/java</generated.src.dir> | 
 |     </properties> | 
 | </project> |