jetty-project / jetty-alpn-agent

Enables Jetty ALPN/NPN support via -javaagent JVM option
Apache License 2.0
47 stars 16 forks source link

Added support for JDK8 u{131,141}. #8

Closed packetpilot closed 7 years ago

packetpilot commented 7 years ago

Intent

compatibility with JDK 8u141 & JDK 8u131

Testing

Basic functionality of alpn-boot-8.1.11.v20170118 with Java 8 u131 and Java 8 u141 was tested using okhttp's tests, which had been modified as follows (8u131 was already associated with 8.1.11.v20170118):

diff --git a/pom.xml b/pom.xml
index c92a23be..7ef32df6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -552,5 +552,14 @@
         <alpn.jdk8.version>8.1.11.v20170118</alpn.jdk8.version>
       </properties>
     </profile>
+    <profile>
+      <id>alpn-when-jdk8_141</id>
+      <activation>
+        <jdk>1.8.0_141</jdk>
+      </activation>
+      <properties>
+        <alpn.jdk8.version>8.1.11.v20170118</alpn.jdk8.version>
+      </properties>
+    </profile>
   </profiles>
 </project>
(END)

okhttp Test Results

0 failures, 0 errors with Java 8 u131:

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] OkHttp (Parent) .................................... SUCCESS [  0.769 s]
[INFO] OkHttp ............................................. SUCCESS [  5.865 s]
[INFO] OkHttp test support classes ........................ SUCCESS [  0.515 s]
[INFO] MockWebServer ...................................... SUCCESS [  6.818 s]
[INFO] OkHttp URLConnection ............................... SUCCESS [  7.642 s]
[INFO] OkHttp Tests ....................................... SUCCESS [01:18 min]
[INFO] OkHttp Android Platform Support .................... SUCCESS [  7.562 s]
[INFO] OkHttp Apache HttpClient ........................... SUCCESS [  1.317 s]
[INFO] OkHttp Logging Interceptor ......................... SUCCESS [  1.254 s]
[INFO] OkCurl ............................................. SUCCESS [  1.390 s]
[INFO] Samples (Parent) ................................... SUCCESS [  0.001 s]
[INFO] Sample: Guide ...................................... SUCCESS [  0.364 s]
[INFO] Sample: Crawler .................................... SUCCESS [  0.139 s]
[INFO] Sample: Simple Client .............................. SUCCESS [  0.113 s]
[INFO] Sample: Slack ...................................... SUCCESS [  0.180 s]
[INFO] Sample: Static Server .............................. SUCCESS [  0.140 s]
[INFO] Benchmarks ......................................... SUCCESS [  0.661 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:53 min
[INFO] Finished at: 2017-07-25T23:02:27-07:00
[INFO] Final Memory: 86M/1115M
[INFO] ------------------------------------------------------------------------

Similarly, with Java 8 u141:

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] OkHttp (Parent) .................................... SUCCESS [  0.781 s]
[INFO] OkHttp ............................................. SUCCESS [  6.078 s]
[INFO] OkHttp test support classes ........................ SUCCESS [  0.516 s]
[INFO] MockWebServer ...................................... SUCCESS [  6.944 s]
[INFO] OkHttp URLConnection ............................... SUCCESS [  7.752 s]
[INFO] OkHttp Tests ....................................... SUCCESS [01:18 min]
[INFO] OkHttp Android Platform Support .................... SUCCESS [  7.535 s]
[INFO] OkHttp Apache HttpClient ........................... SUCCESS [  1.514 s]
[INFO] OkHttp Logging Interceptor ......................... SUCCESS [  1.303 s]
[INFO] OkCurl ............................................. SUCCESS [  1.390 s]
[INFO] Samples (Parent) ................................... SUCCESS [  0.002 s]
[INFO] Sample: Guide ...................................... SUCCESS [  0.476 s]
[INFO] Sample: Crawler .................................... SUCCESS [  0.210 s]
[INFO] Sample: Simple Client .............................. SUCCESS [  0.203 s]
[INFO] Sample: Slack ...................................... SUCCESS [  0.278 s]
[INFO] Sample: Static Server .............................. SUCCESS [  0.233 s]
[INFO] Benchmarks ......................................... SUCCESS [  0.502 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:54 min
[INFO] Finished at: 2017-07-25T22:50:46-07:00
[INFO] Final Memory: 144M/899M
[INFO] ------------------------------------------------------------------------

Minutiae

signed-off-by: dc packetpilot@users.noreply.github.com

sbordet commented 7 years ago

Thanks !

However, this is not needed, since the agent will perform a numerical comparison on the "patch" number to figure out the right alpn-boot version.

See https://github.com/jetty-project/jetty-alpn-agent/blob/master/src/main/java/org/mortbay/jetty/alpn/agent/VersionMapping.java#L50.