jaxrs-ri
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>org.glassfish.jersey.bundles</groupId> <artifactId>jaxrs-ri</artifactId> <version>3.1.10</version> </dependency>
<?xml version="1.0" encoding="UTF-8"?> <!-- Copyright (c) 2012, 2025 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.1.10</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> <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> <exclude>META-INF/versions/21/**</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>module-info.*,META-INF/MANIFEST.MF,**/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,7.0)", jakarta.servlet.descriptor.*;resolution:=optional;version="[5.0,7.0)", jakarta.servlet.*;version="[5.0,7.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> <version>${shade.mvn.plugin.version}</version> <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>2.0.2</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>