diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index fd0930d773..2301680af4 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -27,8 +27,8 @@ jobs: strategy: matrix: # Test against the LTS Java versions. TODO: add JDK18 when it becomes available. - java: [ 8.0.x, 11.0.x, 17.0.x ] - os: [ macos-latest, windows-latest, ubuntu-latest ] + java: [ 8.0.x ] + os: [ windows-latest, ubuntu-latest ] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 diff --git a/client-java-contrib/admissionreview/pom.xml b/client-java-contrib/admissionreview/pom.xml index c79a3dac9e..d641670dce 100644 --- a/client-java-contrib/admissionreview/pom.xml +++ b/client-java-contrib/admissionreview/pom.xml @@ -7,10 +7,10 @@ io.kubernetes client-java-parent - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT ../../pom.xml - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT diff --git a/client-java-contrib/cert-manager/pom.xml b/client-java-contrib/cert-manager/pom.xml index 17b5aafd8f..163e05a96a 100644 --- a/client-java-contrib/cert-manager/pom.xml +++ b/client-java-contrib/cert-manager/pom.xml @@ -6,11 +6,11 @@ io.kubernetes client-java-parent - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT ../../pom.xml - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT io.kubernetes diff --git a/client-java-contrib/prometheus-operator/pom.xml b/client-java-contrib/prometheus-operator/pom.xml index c532ad1713..d8573d52ad 100644 --- a/client-java-contrib/prometheus-operator/pom.xml +++ b/client-java-contrib/prometheus-operator/pom.xml @@ -3,13 +3,13 @@ client-java-parent io.kubernetes - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT ../../pom.xml 4.0.0 client-java-prometheus-operator-models - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT io.kubernetes diff --git a/e2e/pom.xml b/e2e/pom.xml index 62632939d3..acf07a4e37 100644 --- a/e2e/pom.xml +++ b/e2e/pom.xml @@ -10,7 +10,7 @@ client-java-parent io.kubernetes - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT ../pom.xml diff --git a/examples/examples-release-16/pom.xml b/examples/examples-release-16/pom.xml index b1ca75b720..e085d727f0 100644 --- a/examples/examples-release-16/pom.xml +++ b/examples/examples-release-16/pom.xml @@ -1,17 +1,16 @@ - + 4.0.0 io.kubernetes client-java-examples-parent - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT .. client-java-examples-release-16 client-java-examples-release-16 + 19.0.3-SNAPSHOT diff --git a/examples/examples-release-17/pom.xml b/examples/examples-release-17/pom.xml index 2cb2263f6f..4cdd7431e3 100644 --- a/examples/examples-release-17/pom.xml +++ b/examples/examples-release-17/pom.xml @@ -1,17 +1,16 @@ - + 4.0.0 io.kubernetes client-java-examples-parent - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT .. client-java-examples-release-17 client-java-examples-release-17 + 19.0.3-SNAPSHOT diff --git a/examples/examples-release-18/pom.xml b/examples/examples-release-18/pom.xml index 1fcfc36034..e79e786642 100644 --- a/examples/examples-release-18/pom.xml +++ b/examples/examples-release-18/pom.xml @@ -4,12 +4,13 @@ io.kubernetes client-java-examples-parent - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT .. client-java-examples-release-18 client-java-examples-release-18 + 19.0.3-SNAPSHOT @@ -17,16 +18,16 @@ logback-classic runtime - - io.prometheus - simpleclient - 0.15.0 - - - io.prometheus - simpleclient_httpserver - 0.15.0 - + + io.prometheus + simpleclient + 0.15.0 + + + io.prometheus + simpleclient_httpserver + 0.15.0 + io.kubernetes client-java-api @@ -77,7 +78,8 @@ wiremock test - + org.springframework.boot spring-boot-starter-web @@ -93,14 +95,14 @@ - - org.sonatype.plugins - nexus-staging-maven-plugin - true - - true - - + + org.sonatype.plugins + nexus-staging-maven-plugin + true + + true + + org.apache.maven.plugins maven-deploy-plugin @@ -112,4 +114,4 @@ - + \ No newline at end of file diff --git a/examples/examples-release-19/pom.xml b/examples/examples-release-19/pom.xml index 8f013cd2c8..dd085092a6 100644 --- a/examples/examples-release-19/pom.xml +++ b/examples/examples-release-19/pom.xml @@ -4,7 +4,7 @@ io.kubernetes client-java-examples-parent - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT .. @@ -17,16 +17,16 @@ logback-classic runtime - - io.prometheus - simpleclient - 0.15.0 - - - io.prometheus - simpleclient_httpserver - 0.15.0 - + + io.prometheus + simpleclient + 0.15.0 + + + io.prometheus + simpleclient_httpserver + 0.15.0 + io.kubernetes client-java-api @@ -77,7 +77,8 @@ wiremock test - + org.springframework.boot spring-boot-starter-web @@ -93,6 +94,14 @@ + + org.sonatype.plugins + nexus-staging-maven-plugin + true + + true + + org.apache.maven.plugins maven-deploy-plugin @@ -104,4 +113,4 @@ - + \ No newline at end of file diff --git a/examples/pom.xml b/examples/pom.xml index 9c7bf3f945..385143f8a3 100644 --- a/examples/pom.xml +++ b/examples/pom.xml @@ -1,16 +1,14 @@ - + 4.0.0 io.kubernetes client-java-parent - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT ../pom.xml - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT client-java-examples-parent pom diff --git a/extended/pom.xml b/extended/pom.xml index e28b4a40bc..98c1491e97 100644 --- a/extended/pom.xml +++ b/extended/pom.xml @@ -9,7 +9,7 @@ client-java-parent io.kubernetes - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT ../pom.xml diff --git a/fluent-gen/pom.xml b/fluent-gen/pom.xml index ea8eeb17c5..c55285d216 100644 --- a/fluent-gen/pom.xml +++ b/fluent-gen/pom.xml @@ -10,7 +10,7 @@ io.kubernetes client-java-parent - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT ../pom.xml diff --git a/fluent/pom.xml b/fluent/pom.xml index e8985d5f56..e52909f171 100644 --- a/fluent/pom.xml +++ b/fluent/pom.xml @@ -8,7 +8,7 @@ io.kubernetes client-java-parent - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT ../pom.xml diff --git a/kubernetes/pom.xml b/kubernetes/pom.xml index 30bd3df149..834bb16d3e 100644 --- a/kubernetes/pom.xml +++ b/kubernetes/pom.xml @@ -10,7 +10,7 @@ io.kubernetes client-java-parent - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT ../pom.xml diff --git a/pom.xml b/pom.xml index d968dc8a33..54a7231d6a 100644 --- a/pom.xml +++ b/pom.xml @@ -2,13 +2,23 @@ 4.0.0 client-java-parent io.kubernetes - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT pom Kubernetes Client API https://github.com/kubernetes-client/java Kubernetes Client Library + + e2e + examples + client-java-contrib/cert-manager + client-java-contrib/prometheus-operator + client-java-contrib/admissionreview + + + util kubernetes proto @@ -16,11 +26,6 @@ fluent spring spring-aot - e2e - examples - client-java-contrib/cert-manager - client-java-contrib/prometheus-operator - client-java-contrib/admissionreview @@ -42,19 +47,19 @@ 2.2 2.0.9 2.9.3 - 3.24.3 + 3.25.5 4.13 7.6.0 1.76 - 2.10.1 + 2.11.0 3.0.2 - 4.11.0 + 4.12.0 1.6.11 0.101.0 1.8.5 3.13.0 4.4 - 1.24.0 + 1.26.1 2.14.0 1.16.0 3.1.4 @@ -146,7 +151,7 @@ org.bitbucket.b_c jose4j - 0.9.3 + 0.9.4 com.github.vladimir-bukhtoyarov @@ -556,7 +561,7 @@ limitations under the License. 2.2.0 - + diff --git a/proto/pom.xml b/proto/pom.xml index 70690c14b3..421fde5212 100644 --- a/proto/pom.xml +++ b/proto/pom.xml @@ -9,7 +9,7 @@ io.kubernetes client-java-parent - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT ../pom.xml diff --git a/spring-aot/pom.xml b/spring-aot/pom.xml index 070c9898bc..9fa58c5e79 100644 --- a/spring-aot/pom.xml +++ b/spring-aot/pom.xml @@ -1,6 +1,5 @@ - + 4.0.0 io.kubernetes client-java-spring-aot-integration @@ -10,7 +9,7 @@ client-java-parent io.kubernetes - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT ../pom.xml diff --git a/spring/pom.xml b/spring/pom.xml index 4db13dab63..e336929b05 100644 --- a/spring/pom.xml +++ b/spring/pom.xml @@ -10,7 +10,7 @@ client-java-parent io.kubernetes - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT ../pom.xml diff --git a/util/pom.xml b/util/pom.xml index ecf29a1688..a53edfc334 100644 --- a/util/pom.xml +++ b/util/pom.xml @@ -8,7 +8,7 @@ io.kubernetes client-java-parent - 19.0.0-SNAPSHOT + 19.0.3-SNAPSHOT ../pom.xml diff --git a/util/src/main/java/io/kubernetes/client/util/ModelMapper.java b/util/src/main/java/io/kubernetes/client/util/ModelMapper.java index 1271a60ccc..995b151e2d 100644 --- a/util/src/main/java/io/kubernetes/client/util/ModelMapper.java +++ b/util/src/main/java/io/kubernetes/client/util/ModelMapper.java @@ -22,6 +22,7 @@ import java.io.File; import java.io.IOException; +import java.net.JarURLConnection; import java.net.URI; import java.net.URL; import java.net.URLDecoder; @@ -485,14 +486,26 @@ private static List getClassNamesFromPackage(ClassLoader classLoader, St private static void processJarPackage(URL packageURL, String packageName, String pkg, ArrayList names) throws IOException { String jarFileName = URLDecoder.decode(packageURL.getFile(), "UTF-8"); - jarFileName = jarFileName.substring(5, jarFileName.indexOf("!")); + JarFile jf = null; + // jar: client in repository; nested: client in a fat jar + if (jarFileName.startsWith("jar:") || jarFileName.startsWith("nested:")) { + jf = ((JarURLConnection) packageURL.openConnection()).getJarFile(); + } + // file: client is a file in target (unit test) + if (jarFileName.startsWith("file:") ) { + jarFileName = jarFileName.substring(5, jarFileName.indexOf("!")); + jf = new JarFile(jarFileName); + } + if (jf == null) { + logger.error("Loading classes from jar with error packageURL: {}", jarFileName); + return; + } logger.info("Loading classes from jar {}", jarFileName); - try (JarFile jf = new JarFile(jarFileName)) { - Enumeration jarEntries = jf.entries(); - while (jarEntries.hasMoreElements()) { - processJarEntry(jarEntries.nextElement(), packageName, pkg, names); - } + Enumeration jarEntries = jf.entries(); + while (jarEntries.hasMoreElements()) { + processJarEntry(jarEntries.nextElement(), packageName, pkg, names); } + jf.close(); } private static void processJarEntry(JarEntry jarEntry, String packageName, String pkg, ArrayList names) {