+ <Export-Package>*;version=${slf4j.version}</Export-Package>
+ </instructions>
+ </artifact>
+ <artifact>
+ <id>ch.qos.logback:logback-classic:${logback-classic.version}</id>
+ <source>true</source>
+ <override>true</override>
+ </artifact>
+ <artifact>
+ <id>com.koloboke:koloboke-compile:${koloboke-compile.version}</id>
+ <source>true</source>
+ </artifact>
+ <artifact>
+ <id>com.koloboke:koloboke-impl-common-jdk8:${koloboke-impl-common-jdk8.version}</id>
+ <source>true</source>
+ </artifact>
+ <artifact>
+ <id>com.esotericsoftware:kryo:${kryo.version}</id>
+ <source>true</source>
+ </artifact>
+ <artifact>
+ <id>org.apache.aries.spifly:org.apache.aries.spifly.dynamic.bundle:${org.apache.aries.spifly.dynamic.bundle.version}</id>
+ <source>true</source>
+ </artifact>
+ <artifact>
+ <id>org.glassfish.jersey.core:jersey-server:${jersey.version}</id>
+ <source>true</source>
+ </artifact>
+ <artifact>
+ <id>org.glassfish.jersey.core:jersey-client:${jersey.version}</id>
+ <source>true</source>
+ </artifact>
+ <artifact>
+ <id>org.glassfish.jersey.media:jersey-media-multipart:${jersey.version}</id>
+ <source>true</source>
+ </artifact>
+ <artifact>
+ <id>org.glassfish.jersey.media:jersey-media-json-jackson:${jersey.version}</id>
+ <source>true</source>
+ <excludes>
+ <exclude>com.fasterxml.jackson.*</exclude>
+ </excludes>
+ </artifact>
+ <artifact>
+ <id>org.glassfish.jersey.containers:jersey-container-servlet-core:${jersey.version}</id>
+ <source>true</source>
+ </artifact>
+ <artifact>
+ <id>org.jboss.windup.decompiler:decompiler-procyon:${decompiler-procyon.version}</id>
+ <source>true</source>
+ </artifact>
+ <artifact>
+ <id>org.jsoup:jsoup:${jsoup.version}</id>
+ <source>true</source>
+ </artifact>
+ <artifact>
+ <id>org.yaml:snakeyaml:${snakeyaml.version}</id>
+ <source>true</source>
+ </artifact>
+ <artifact>
+ <id>org.eclipse.jetty:jetty-servlets:${jetty945.version}</id>
+ <source>true</source>
+ </artifact>
+ <artifact>
+ <id>org.zeroturnaround:zt-exec:${zeroturnaround.version}</id>
+ <source>true</source>
+ </artifact>
+ <!-- Since 1.21.0 grpc, a manually set up plugin is provided in third-party repository.
+ Note: grpc-core, grpc-context, and grpc-stub (maybe others as well) must be bundled into same plug-in, since they contain split packages.
+ See:
+ * https://github.com/grpc/grpc-java/issues/2727
+ * https://github.com/grpc/grpc-java/issues/3522
+ <artifact>
+ <id>io.grpc:io.grpc:${grpc.version}</id>
+ <source>true</source>
+ </artifact>
+ <artifact>
+ <id>io.grpc:grpc-netty:${grpc.version}</id>
+ <source>true</source>
+ <override>true</override>
+ <instructions>
+ <Require-Bundle>
+ io.netty.buffer;bundle-version="4.1.27",
+ io.netty.codec;bundle-version="4.1.27",
+ io.netty.codec-http;bundle-version="4.1.27",
+ io.netty.codec-http2;bundle-version="4.1.27",
+ io.netty.codec-socks;bundle-version="4.1.27",
+ io.netty.common;bundle-version="4.1.27",
+ io.netty.handler;bundle-version="4.1.27",
+ io.netty.handler-proxy;bundle-version="4.1.27",
+ io.netty.resolver;bundle-version="4.1.27",
+ io.netty.transport;bundle-version="4.1.27",
+ io.grpc
+ </Require-Bundle>
+ <Import-Package>!io.netty.*,*;resolution:=optional</Import-Package>
+ <Require-Capability>
+ osgi.extender;
+ filter:="(osgi.extender=osgi.serviceloader.registrar)"
+ </Require-Capability>
+ <Provide-Capability>
+ osgi.serviceloader;
+ osgi.serviceloader=io.grpc.ServerProvider,
+ osgi.serviceloader;
+ osgi.serviceloader=io.grpc.ManagedChannelProvider
+ </Provide-Capability>
+ <Bundle-Version>${grpc.version.actual}</Bundle-Version>