summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@verizonmedia.com>2021-04-14 13:58:29 +0200
committerBjørn Christian Seime <bjorncs@verizonmedia.com>2021-04-14 14:57:13 +0200
commit6a75b47243580529cf2abb9fd4f8d439c890135a (patch)
tree3c807e4871e25d102b63c3e003930bf27f431172
parentacc1a51015dc24ad3de9e99c9c067d49a517b8c1 (diff)
Use spifly to support ServiceLoader API in OSGi context
Includes upgrade of asm to 9.1
-rw-r--r--application/pom.xml6
-rw-r--r--container-dependency-versions/pom.xml8
-rw-r--r--container-disc/pom.xml7
-rw-r--r--dist/vespa.spec2
-rw-r--r--jdisc_jetty/pom.xml5
-rw-r--r--parent/pom.xml2
6 files changed, 28 insertions, 2 deletions
diff --git a/application/pom.xml b/application/pom.xml
index 1e14610af69..25e17aca3f9 100644
--- a/application/pom.xml
+++ b/application/pom.xml
@@ -66,6 +66,12 @@
<artifactId>jdisc_jetty</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.apache.aries.spifly</groupId>
+ <artifactId>org.apache.aries.spifly.dynamic.bundle</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
diff --git a/container-dependency-versions/pom.xml b/container-dependency-versions/pom.xml
index c7353241d35..5944e1c2e1b 100644
--- a/container-dependency-versions/pom.xml
+++ b/container-dependency-versions/pom.xml
@@ -430,7 +430,12 @@
<artifactId>jetty-jmx</artifactId>
<version>${jetty.version}</version>
</dependency>
-
+ <dependency>
+ <!-- Installed in jdisc runtime, but should only be used internally and not leaked as maven dep to users -->
+ <groupId>org.apache.aries.spifly</groupId>
+ <artifactId>org.apache.aries.spifly.dynamic.bundle</artifactId>
+ <version>${spifly.version}</version>
+ </dependency>
<!-- Please don't add deps here, but instead above the NOTE. -->
</dependencies>
@@ -476,6 +481,7 @@
<org.lz4.version>1.7.1</org.lz4.version>
<org.json.version>20090211</org.json.version>
<slf4j.version>1.7.30</slf4j.version>
+ <spifly.version>1.3.3</spifly.version>
<xml-apis.version>1.4.01</xml-apis.version>
<!-- These must be kept in sync with version used by current jersey2.version. -->
diff --git a/container-disc/pom.xml b/container-disc/pom.xml
index 6e7d39585df..416f47654fe 100644
--- a/container-disc/pom.xml
+++ b/container-disc/pom.xml
@@ -202,6 +202,13 @@
jetty-servlets-${jetty.version}.jar,
jetty-util-${jetty.version}.jar,
jetty-util-ajax-${jetty.version}.jar,
+ <!-- Spifly (required for OSGi service loader in Jetty) -->
+ org.apache.aries.spifly.dynamic.bundle-${spifly.version}.jar,
+ asm-${asm.version}.jar,
+ asm-analysis-${asm.version}.jar,
+ asm-commons-${asm.version}.jar,
+ asm-tree-${asm.version}.jar,
+ asm-util-${asm.version}.jar,
<!-- Misc 3rd party bundles -->
bcpkix-jdk15on-${bouncycastle.version}.jar,
bcprov-jdk15on-${bouncycastle.version}.jar,
diff --git a/dist/vespa.spec b/dist/vespa.spec
index a7138397506..9411cbb5129 100644
--- a/dist/vespa.spec
+++ b/dist/vespa.spec
@@ -622,6 +622,7 @@ fi
%dir %{_prefix}
%dir %{_prefix}/lib
%dir %{_prefix}/lib/jars
+%{_prefix}/lib/jars/asm-*.jar
%{_prefix}/lib/jars/aopalliance-repackaged-*.jar
%{_prefix}/lib/jars/bcpkix-jdk15on-*.jar
%{_prefix}/lib/jars/bcprov-jdk15on-*.jar
@@ -655,6 +656,7 @@ fi
%{_prefix}/lib/jars/mimepull-*.jar
%{_prefix}/lib/jars/model-evaluation-jar-with-dependencies.jar
%{_prefix}/lib/jars/model-integration-jar-with-dependencies.jar
+%{_prefix}/lib/jars/org.apache.aries.spifly.dynamic.bundle-*.jar
%{_prefix}/lib/jars/osgi-resource-locator-*.jar
%{_prefix}/lib/jars/security-utils-jar-with-dependencies.jar
%{_prefix}/lib/jars/simplemetrics-jar-with-dependencies.jar
diff --git a/jdisc_jetty/pom.xml b/jdisc_jetty/pom.xml
index fcbf0eed8b7..379255c4fd8 100644
--- a/jdisc_jetty/pom.xml
+++ b/jdisc_jetty/pom.xml
@@ -47,6 +47,11 @@
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-jmx</artifactId>
</dependency>
+ <dependency>
+ <!-- Required for ServiceLoader to function in OSGi environment. ServiceLoader is used by Jetty -->
+ <groupId>org.apache.aries.spifly</groupId>
+ <artifactId>org.apache.aries.spifly.dynamic.bundle</artifactId>
+ </dependency>
</dependencies>
<build>
<plugins>
diff --git a/parent/pom.xml b/parent/pom.xml
index 097f72a1943..c18ec3ed947 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -777,7 +777,7 @@
<apache.httpclient.version>4.5.12</apache.httpclient.version>
<apache.httpcore.version>4.4.13</apache.httpcore.version>
<apache.httpclient5.version>5.0.3</apache.httpclient5.version>
- <asm.version>7.0</asm.version>
+ <asm.version>9.1</asm.version>
<!-- Athenz dependencies. Make sure these dependencies match those in Vespa's internal repositories -->
<athenz.version>1.10.11</athenz.version>
<jjwt.version>0.11.2</jjwt.version>