flink 1.16.0上传jar报错

flink 1.16.0上传jar报错

1. 异常信息

部署方式 Application Mode On Yarn
https://nightlies.apache.org/flink/flink-docs-release-1.16/docs/deployment/resource-providers/yarn/

Caused by: java.lang.ClassCastException: org.codehaus.janino.CompilerFactory cannot be cast to org.codehaus.commons.compiler.ICompilerFactory
	at org.codehaus.commons.compiler.CompilerFactoryFactory.getCompilerFactory(CompilerFactoryFactory.java:129) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.codehaus.commons.compiler.CompilerFactoryFactory.getDefaultCompilerFactory(CompilerFactoryFactory.java:79) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.rel.metadata.JaninoRelMetadataProvider.compile(JaninoRelMetadataProvider.java:426) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.rel.metadata.JaninoRelMetadataProvider.load3(JaninoRelMetadataProvider.java:374) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.rel.metadata.JaninoRelMetadataProvider.lambda$static$0(JaninoRelMetadataProvider.java:109) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.calcite.shaded.com.google.common.cache.CacheLoader$FunctionToCacheLoader.load(CacheLoader.java:165) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.calcite.shaded.com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3529) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.calcite.shaded.com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2278) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.calcite.shaded.com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2155) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.calcite.shaded.com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2045) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.calcite.shaded.com.google.common.cache.LocalCache.get(LocalCache.java:3951) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.calcite.shaded.com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3974) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.calcite.shaded.com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4958) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.rel.metadata.JaninoRelMetadataProvider.create(JaninoRelMetadataProvider.java:469) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.rel.metadata.JaninoRelMetadataProvider.revise(JaninoRelMetadataProvider.java:481) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.rel.metadata.RelMetadataQueryBase.revise(RelMetadataQueryBase.java:95) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.rel.metadata.RelMetadataQuery.getPulledUpPredicates(RelMetadataQuery.java:784) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.rel.rules.ReduceExpressionsRule$ProjectReduceExpressionsRule.onMatch(ReduceExpressionsRule.java:303) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.plan.AbstractRelOptPlanner.fireRule(AbstractRelOptPlanner.java:333) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.plan.hep.HepPlanner.applyRule(HepPlanner.java:542) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.plan.hep.HepPlanner.applyRules(HepPlanner.java:407) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.plan.hep.HepPlanner.executeInstruction(HepPlanner.java:243) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.plan.hep.HepInstruction$RuleInstance.execute(HepInstruction.java:127) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.plan.hep.HepPlanner.executeProgram(HepPlanner.java:202) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.calcite.plan.hep.HepPlanner.findBestExp(HepPlanner.java:189) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.table.planner.plan.optimize.program.FlinkHepProgram.optimize(FlinkHepProgram.scala:64) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.table.planner.plan.optimize.program.FlinkHepRuleSetProgram.optimize(FlinkHepRuleSetProgram.scala:78) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.table.planner.plan.optimize.program.FlinkChainedProgram.$anonfun$optimize$1(FlinkChainedProgram.scala:59) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at scala.collection.TraversableOnce.$anonfun$foldLeft$1(TraversableOnce.scala:156) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at scala.collection.TraversableOnce.$anonfun$foldLeft$1$adapted(TraversableOnce.scala:156) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at scala.collection.Iterator.foreach(Iterator.scala:937) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at scala.collection.Iterator.foreach$(Iterator.scala:937) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at scala.collection.AbstractIterator.foreach(Iterator.scala:1425) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at scala.collection.IterableLike.foreach(IterableLike.scala:70) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at scala.collection.IterableLike.foreach$(IterableLike.scala:69) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at scala.collection.AbstractIterable.foreach(Iterable.scala:54) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at scala.collection.TraversableOnce.foldLeft(TraversableOnce.scala:156) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at scala.collection.TraversableOnce.foldLeft$(TraversableOnce.scala:154) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at scala.collection.AbstractTraversable.foldLeft(Traversable.scala:104) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.table.planner.plan.optimize.program.FlinkChainedProgram.optimize(FlinkChainedProgram.scala:55) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.table.planner.plan.optimize.StreamCommonSubGraphBasedOptimizer.optimizeTree(StreamCommonSubGraphBasedOptimizer.scala:176) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.table.planner.plan.optimize.StreamCommonSubGraphBasedOptimizer.doOptimize(StreamCommonSubGraphBasedOptimizer.scala:83) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.table.planner.plan.optimize.CommonSubGraphBasedOptimizer.optimize(CommonSubGraphBasedOptimizer.scala:87) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.table.planner.delegation.PlannerBase.optimize(PlannerBase.scala:315) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.table.planner.delegation.PlannerBase.translate(PlannerBase.scala:195) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.table.api.bridge.internal.AbstractStreamTableEnvironmentImpl.toStreamInternal(AbstractStreamTableEnvironmentImpl.java:224) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.table.api.bridge.internal.AbstractStreamTableEnvironmentImpl.toStreamInternal(AbstractStreamTableEnvironmentImpl.java:219) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at org.apache.flink.table.api.bridge.java.internal.StreamTableEnvironmentImpl.toChangelogStream(StreamTableEnvironmentImpl.java:263) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at com.sci99.flink.nginxlog.metrics.alert.NginxlogSqlJob.main(NginxlogSqlJob.java:119) ~[flink-nginxlog-metrics-1.0-SNAPSHOT.jar:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_144]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_144]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_144]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_144]
	at org.apache.flink.client.program.PackagedProgram.callMainMethod(PackagedProgram.java:355) ~[flink-dist-1.16.0.jar:1.16.0]
	at org.apache.flink.client.program.PackagedProgram.invokeInteractiveModeForExecution(PackagedProgram.java:222) ~[flink-dist-1.16.0.jar:1.16.0]
	at org.apache.flink.client.ClientUtils.executeProgram(ClientUtils.java:98) ~[flink-dist-1.16.0.jar:1.16.0]
	at org.apache.flink.client.deployment.application.ApplicationDispatcherBootstrap.runApplicationEntryPoint(ApplicationDispatcherBootstrap.java:301) ~[flink-dist-1.16.0.jar:1.16.0]
	... 12 more

Caused by: java.lang.ClassCastException: org.codehaus.janino.CompilerFactory cannot be cast to org.codehaus.commons.compiler.ICompilerFactory

2. 解决方案

修改 ./conf/flink-conf.yaml

classloader.resolve-order: parent-first

doc
https://nightlies.apache.org/flink/flink-docs-release-1.16/docs/deployment/config/

Defines the class resolution strategy when loading classes from user code, meaning whether to first check the user code jar (“child-first”) or the application classpath (“parent-first”). The default settings indicate to load classes first from the user code jar, which means that user code jars can include and load different dependencies than Flink uses (transitively).

定义从用户代码加载类时的类解析策略,即首先检查用户代码jar(“子优先”)还是应用程序类路径(“父优先”)。默认设置指示首先从用户代码jar加载类,这意味着用户代码jar可以包含和加载与Flink使用的不同依赖项(传递式)。

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值