hi David, yes . you are correct. solved the issue On Tue, Sep 14, 2021 at 5:57 PM David Morávek <d...@apache.org> wrote:
> From the stacktrace you've shared in the previous email, it seems that > you're running the code from IDE, is that correct? > > This is the part that makes me assume that, because it's touching files > from local maven repository. > > SLF4J: Found binding in > [jar:file:/Users/z004t01/.m2/repository/org/slf4j/slf4j-log4j12/1.7.25/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] > > Please note that IDE most likely doesn't use the resulting fat jar for > running your program, but instead constructs the classpath from the > dependency graph. This most likely comes a transitive dependency from one > of the hadoop deps, so you can try to exclude it there directly. You can > use mvn dependency:tree to verify the exclusion. > > Best, > D. > > On Tue, Sep 14, 2021 at 2:15 PM Ragini Manjaiah <ragini.manja...@gmail.com> > wrote: > >> Hi David, >> please find my pom.xml . where I have excluded the slf4j-log4j12 >> dependency . even after excluding encountering this issue >> >> <?xml version="1.0" encoding="UTF-8"?> >> <project xmlns="http://maven.apache.org/POM/4.0.0" >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 >> http://maven.apache.org/xsd/maven-4.0.0.xsd"> >> <modelVersion>4.0.0</modelVersion> >> >> <groupId>flinkTest</groupId> >> <artifactId>*****</artifactId> >> <version>1.0-SNAPSHOT</version> >> >> >> <properties> >> <flink.version>1.11.3</flink.version> >> <scala.version>2.11</scala.version> >> </properties> >> <dependencies> >> >> <dependency> >> <groupId>org.apache.flink</groupId> >> <artifactId>flink-connector-elasticsearch7_2.11</artifactId> >> <version>1.10.0</version> >> </dependency> >> >> <dependency> >> <groupId>org.apache.flink</groupId> >> <artifactId>flink-java</artifactId> >> <version>${flink.version}</version> >> </dependency> >> <dependency> >> <groupId>org.apache.flink</groupId> >> <artifactId>flink-java</artifactId> >> <version>${flink.version}</version> >> </dependency> >> >> <dependency> >> <groupId>org.apache.flink</groupId> >> <artifactId>flink-streaming-java_2.11</artifactId> >> <version>${flink.version}</version> >> </dependency> >> >> <dependency> >> <groupId>org.apache.flink</groupId> >> >> <artifactId>flink-statebackend-rocksdb_${scala.version}</artifactId> >> <version>${flink.version}</version> >> </dependency> >> >> <dependency> >> <groupId>org.apache.flink</groupId> >> <artifactId>flink-clients_${scala.version}</artifactId> >> <version>${flink.version}</version> >> </dependency> >> <dependency> >> <groupId>org.apache.flink</groupId> >> <artifactId>flink-core</artifactId> >> <version>${flink.version}</version> >> </dependency> >> <dependency> >> <groupId>org.apache.flink</groupId> >> <artifactId>flink-avro</artifactId> >> <version>${flink.version}</version> >> </dependency> >> <dependency> >> <groupId>org.apache.flink</groupId> >> >> <artifactId>flink-connector-kafka-0.11_${scala.version}</artifactId> >> <version>${flink.version}</version> >> </dependency> >> <dependency> >> <groupId>org.apache.flink</groupId> >> <artifactId>flink-test-utils_${scala.version}</artifactId> >> <version>${flink.version}</version> >> </dependency> >> <dependency> >> <groupId>nl.basjes.parse.useragent</groupId> >> <artifactId>yauaa</artifactId> >> <version>1.3</version> >> </dependency> >> >> <dependency> >> <groupId>com.googlecode.json-simple</groupId> >> <artifactId>json-simple</artifactId> >> <version>1.1</version> >> </dependency> >> <dependency> >> <groupId>de.javakaffee</groupId> >> <artifactId>kryo-serializers</artifactId> >> <version>0.38</version> >> </dependency> >> <dependency> >> <groupId>com.github.wnameless</groupId> >> <artifactId>json-flattener</artifactId> >> <version>0.5.0</version> >> </dependency> >> <dependency> >> <groupId>joda-time</groupId> >> <artifactId>joda-time</artifactId> >> <version>2.9.1</version> >> </dependency> >> <dependency> >> <groupId>com.google.code.gson</groupId> >> <artifactId>gson</artifactId> >> <version>2.2.4</version> >> </dependency> >> <dependency> >> <groupId>org.json</groupId> >> <artifactId>json</artifactId> >> <version>20200518</version> >> >> </dependency> >> <dependency> >> <groupId>org.apache.hadoop</groupId> >> <artifactId>hadoop-common</artifactId> >> <version>3.2.0</version> >> </dependency> >> <dependency> >> <groupId>org.apache.hadoop</groupId> >> <artifactId>hadoop-mapreduce-client-core</artifactId> >> <version>3.2.0</version> >> </dependency> >> >> >> </dependencies> >> <repositories> >> <repository> >> <id>spring-repo</id> >> <url>https://repo1.maven.org/maven2/</url> >> </repository> >> </repositories> >> >> >> <build> >> <plugins> >> >> <plugin> >> <groupId>org.apache.maven.plugins</groupId> >> <artifactId>maven-compiler-plugin</artifactId> >> <version>3.1</version> >> <configuration> >> <source>1.8</source> >> <target>1.8</target> >> </configuration> >> </plugin> >> >> <!-- Java Compiler --> >> >> <!-- We use the maven-shade plugin to create a fat jar that >> contains all necessary dependencies. --> >> <!-- Change the value of <mainClass>...</mainClass> if your >> program entry point changes. --> >> <plugin> >> <groupId>org.apache.maven.plugins</groupId> >> <artifactId>maven-shade-plugin</artifactId> >> <version>3.0.0</version> >> <executions> >> <!-- Run shade goal on package phase --> >> <execution> >> <phase>package</phase> >> <goals> >> <goal>shade</goal> >> </goals> >> <configuration> >> <artifactSet> >> <excludes> >> >> <exclude>org.apache.flink:force-shading</exclude> >> >> <exclude>com.google.code.findbugs:jsr305</exclude> >> <exclude>org.slf4j:*</exclude> >> <exclude>log4j:*</exclude> >> <exclude>org.slf4j:slf4j-api</exclude> >> <exclude>org.slf4j:slf4j-log4j12</exclude> >> <exclude>log4j:log4j</exclude> >> >> </excludes> >> </artifactSet> >> <filters> >> <filter> >> <!-- Do not copy the signatures in the >> META-INF folder. >> Otherwise, this might cause >> SecurityExceptions when using the JAR. --> >> <artifact>*:*</artifact> >> <excludes> >> <exclude>META-INF/*.SF</exclude> >> <exclude>META-INF/*.DSA</exclude> >> <exclude>META-INF/*.RSA</exclude> >> </excludes> >> </filter> >> </filters> >> <transformers> >> <transformer >> implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> >> >> <mainClass>org.sapphire.watchtower.Application</mainClass> >> </transformer> >> >> </transformers> >> </configuration> >> </execution> >> </executions> >> </plugin> >> </plugins> >> >> <pluginManagement> >> <plugins> >> >> <plugin> >> <artifactId>maven-surefire-plugin</artifactId> >> <version>2.12.3</version> >> </plugin> >> <plugin> >> <artifactId>maven-failsafe-plugin</artifactId> >> <version>2.12.3</version> >> </plugin> >> >> <!-- This improves the out-of-the-box experience in Eclipse >> by resolving some warnings. --> >> <plugin> >> <groupId>org.eclipse.m2e</groupId> >> <artifactId>lifecycle-mapping</artifactId> >> <version>1.0.0</version> >> <configuration> >> <lifecycleMappingMetadata> >> <pluginExecutions> >> <pluginExecution> >> <pluginExecutionFilter> >> >> <groupId>org.apache.maven.plugins</groupId> >> >> <artifactId>maven-shade-plugin</artifactId> >> <versionRange>[3.0.0,)</versionRange> >> <goals> >> <goal>shade</goal> >> </goals> >> </pluginExecutionFilter> >> <action> >> <ignore/> >> </action> >> </pluginExecution> >> <pluginExecution> >> <pluginExecutionFilter> >> >> <groupId>org.apache.maven.plugins</groupId> >> >> <artifactId>maven-compiler-plugin</artifactId> >> <versionRange>[3.1,)</versionRange> >> <goals> >> <goal>testCompile</goal> >> <goal>compile</goal> >> </goals> >> </pluginExecutionFilter> >> <action> >> <ignore/> >> </action> >> </pluginExecution> >> </pluginExecutions> >> </lifecycleMappingMetadata> >> </configuration> >> </plugin> >> </plugins> >> </pluginManagement> >> </build> >> >> </project> >> >> >> On Tue, Sep 14, 2021 at 5:32 PM David Morávek <d...@apache.org> wrote: >> >>> Hi Ragini, >>> >>> I think you actually have the opposite problem that your classpath >>> contains slf4j binding for log4j 1.2, which is no longer supported. Can you >>> try getting rid of the slf4j-log4j12 dependency? >>> >>> Best, >>> D. >>> >>> On Tue, Sep 14, 2021 at 1:51 PM Ragini Manjaiah < >>> ragini.manja...@gmail.com> wrote: >>> >>>> when I try to run flink .1.13 application encountering the below >>>> mentioned issue. what dependency I am missing . can you please help me >>>> >>>> >>>> SLF4J: Class path contains multiple SLF4J bindings. >>>> SLF4J: Found binding in >>>> [jar:file:/Users/z004t01/.m2/repository/org/apache/logging/log4j/log4j-slf4j-impl/2.12.1/log4j-slf4j-impl-2.12.1.jar!/org/slf4j/impl/StaticLoggerBinder.class] >>>> SLF4J: Found binding in >>>> [jar:file:/Users/z004t01/.m2/repository/org/slf4j/slf4j-log4j12/1.7.25/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] >>>> SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an >>>> explanation. >>>> SLF4J: Actual binding is of type >>>> [org.apache.logging.slf4j.Log4jLoggerFactory] >>>> at java.lang.ClassLoader.defineClass1(Native Method) >>>> at java.lang.ClassLoader.defineClass(ClassLoader.java:756) >>>> 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:418) >>>> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355) >>>> at java.lang.ClassLoader.loadClass(ClassLoader.java:351) >>>> at >>>> org.apache.logging.log4j.core.impl.Log4jContextFactory.createContextSelector(Log4jContextFactory.java:106) >>>> at >>>> org.apache.logging.log4j.core.impl.Log4jContextFactory.<init>(Log4jContextFactory.java:59) >>>> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) >>>> at >>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) >>>> at >>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) >>>> at java.lang.reflect.Constructor.newInstance(Constructor.java:423) >>>> at java.lang.Class.newInstance(Class.java:442) >>>> at org.apache.logging.log4j.LogManager.<clinit>(LogManager.java:94) >>>> at >>>> org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:122) >>>> at >>>> org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:45) >>>> at >>>> org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:46) >>>> at >>>> org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:30) >>>> at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:329) >>>> at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:349) >>>> at >>>> org.apache.flink.configuration.Configuration.<clinit>(Configuration.java:67) >>>> at >>>> org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.createLocalEnvironment(StreamExecutionEnvironment.java:1972) >>>> at >>>> org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.createLocalEnvironment(StreamExecutionEnvironment.java:1958) >>>> at java.util.Optional.orElseGet(Optional.java:267) >>>> at >>>> org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.getExecutionEnvironment(StreamExecutionEnvironment.java:1945) >>>> at org.sapphire.watchtower.Application.main(Application.java:63) >>>> Caused by: java.lang.ClassNotFoundException: >>>> org.apache.logging.log4j.spi.LoggerContextShutdownAware >>>> at java.net.URLClassLoader.findClass(URLClassLoader.java:382) >>>> at java.lang.ClassLoader.loadClass(ClassLoader.java:418) >>>> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355) >>>> at java.lang.ClassLoader.loadClass(ClassLoader.java:351) >>>> ... 32 more >>>> >>>