【发布时间】:2021-04-08 22:36:56
【问题描述】:
如何使用 java15 运行 hazelcast?我正在使用 usercodedeployment,所以我需要在 java 15 中安装我自己的类。现在我收到错误:
{"@timestamp":"2021-04-08T23:34:43.129+02:00","@version":"1","message":"Hazelcast nepripojen","logger_name":"org.my.data.HazelcastInstanceWrapper","thread_name":"main","level":"ERROR","level_value":40000,"stack_trace":"com.hazelcast.client.UndefinedErrorCodeException: Class name: java.lang.UnsupportedClassVersionError, Message: org/my/data/MyData has been compiled by a more recent version of the Java Runtime (class file version 59.0), this version of the Java Runtime only recognizes class file versions up to 55.0\n\tat java.lang.ClassLoader.defineClass1(Native Method)\n\tat java.lang.ClassLoader.defineClass(ClassLoader.java:1017)\n\tat java.lang.ClassLoader.defineClass(ClassLoader.java:878)\n\tat com.hazelcast.internal.usercodedeployment.impl.ClassSource.define(ClassSource.java:52)\n\tat com.hazelcast.internal.usercodedeployment.impl.ClassLocator.defineClassFromClient(ClassLocator.java:135)\n\tat com.hazelcast.internal.usercodedeployment.impl.ClassLocator.defineClassesFromClient(ClassLocator.java:107)\n\tat com.hazelcast.internal.usercodedeployment.UserCodeDeploymentService.defineClasses(UserCodeDeploymentService.java:74)\n\tat com.hazelcast.internal.usercodedeployment.impl.operation.DeployClassesOperation.run(DeployClassesOperation.java:49)\n\tat com.hazelcast.spi.impl.operationservice.Operation.call(Operation.java:184)\n\tat com.hazelcast.spi.impl.operationservice.impl.OperationRunnerImpl.call(OperationRunnerImpl.java:256)\n\tat com.hazelcast.spi.impl.operationservice.impl.OperationRunnerImpl.run(OperationRunnerImpl.java:237)\n\tat com.hazelcast.spi.impl.operationservice.impl.OperationRunnerImpl.run(OperationRunnerImpl.java:452)\n\tat com.hazelcast.spi.impl.operationexecutor.impl.OperationThread.process(OperationThread.java:166)\n\tat com.hazelcast.spi.impl.operationexecutor.impl.OperationThread.process(OperationThread.java:136)\n\tat com.hazelcast.spi.impl.operationexecutor.impl.OperationThread.executeRun(OperationThread.java:123)\n\tat com.hazelcast.internal.util.executor.HazelcastManagedThread.run(HazelcastManagedThread.java:102)\n","SERVERNAME":"rob-cache-8448d476d6-l9k2j"}
我检查 hazelcast 是否支持这个版本,当我检查官方 dockerfile 时,有 java11。是否还有 java 15 的版本,或者我需要使用 java 15 创建自己的 dockerfile?
【问题讨论】:
-
当底层可执行文件不兼容时,制作自己的 docker 文件将无济于事