gpt4 book ai didi

aks 上的 java spring boot 微服务部署抛出 UnsupportedClassVersionError

转载 作者:行者123 更新时间:2023-12-02 12:26:59 25 4
gpt4 key购买 nike

尝试在 aks 上部署 java springboot 微服务时不断给我 UnsupportedClassVersionError。我正在使用“kubectl apply -f file.yaml”命令来应用部署。即使现在编译为正确的编译器版本,它仍然提示相同。不知道我在哪里失踪。

第一次尝试
- 使用 oracle openjdk 11 编译
- 使用 javap -verbose MyApplication 检查编译的类版本 | findstr "major"控制台输出 - 主要版本:55
- 部署到 aks 失败

第二次尝试
- 使用 oracle jdk 1.8 编译
- 使用' javap -verbose MyApplication | 检查编译的类版本findstr "major"'   控制台输出 - 主要版本:52
- 部署到 aks 失败

两种部署共有
- 使用命令“kubectl apply -f myapp.yaml”部署在 aks 集群上
- 收到相同的错误,即,

> Exception in thread "main" java.lang.UnsupportedClassVersionError:
> MyApplication has been compiled by a more recent version of the Java
> Runtime (class file version 55.0), this version of the Java Runtime
> only recognizes class file versions up to 52.0
> at java.lang.ClassLoader.defineClass1(Native Method)
> at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
> at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
> at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
> at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
> at org.springframework.boot.loader.LaunchedURLClassLoader.loadClass(LaunchedURLClassLoader.java:92)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:46)
> at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
> at org.springframework.boot.loader.Launcher.launch(Launcher.java:51)
> at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:52)

请求帮助

问候

最佳答案

默认拉取策略设置为 IfNotPresent如果它已经存在于 pod 的节点上,它告诉 Kubelet 跳过拉取图像。正在安排中。
如果您想强制图像始终被拉出,您可以执行以下操作:

  • set the imagePullPolicy of the container to Always.
  • omit the imagePullPolicy and use :latest as the tag for the image to use.
  • omit the imagePullPolicy and the tag for the image to use.
  • enable the AlwaysPullImages admission controller.

Note that you should avoid using :latest tag, see Best Practices for Configuration for more information.

关于aks 上的 java spring boot 微服务部署抛出 UnsupportedClassVersionError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62134377/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com