Said dependency (on commons-logging) is not meant to be provided by the docker image, but bundled in your user-jar (along with the connector).

On 08/11/2022 02:14, Matt Fysh wrote:
Hi, I'm following the kinesis connector instructions as documented here: https://nightlies.apache.org/flink/flink-docs-release-1.16/docs/connectors/datastream/kinesis/

I'm also running Flink in standalone session mode using docker compose and the Python images, as described in the Flink docs (Deployment section)

When I try to run a basic datastream.print() / env.execute() example with a kinesis source, I get the following error. From my limited understanding of Java, it seems the Kinesis connector is using a shaded version of the AWS Java SDK, and that older version of the SDK is trying to load a class that is no longer present in the 1.16.0 Flink docker images. Is there a workaround for this? Thanks

Caused by: java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory at org.apache.flink.kinesis.shaded.com.amazonaws.ClientConfiguration.<clinit>(ClientConfiguration.java:47) at org.apache.flink.kinesis.shaded.com.amazonaws.ClientConfigurationFactory.getDefaultConfig(ClientConfigurationFactory.java:46) at org.apache.flink.kinesis.shaded.com.amazonaws.ClientConfigurationFactory.getConfig(ClientConfigurationFactory.java:36) at org.apache.flink.streaming.connectors.kinesis.proxy.KinesisProxy.createKinesisClient(KinesisProxy.java:268) at org.apache.flink.streaming.connectors.kinesis.proxy.KinesisProxy.<init>(KinesisProxy.java:152)


Reply via email to