[ https://issues.apache.org/jira/browse/THRIFT-3035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14698703#comment-14698703 ]
Alik Elzin commented on THRIFT-3035: ------------------------------------ My 2 cents: Thrift is expecting an implementation version of slf4j in runtime. I think it's fine, though there are implementations, like mongodb that define slf4j as optional and know how to behave in the lack of implementation: <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.6</version> <scope>compile</scope> <optional>true</optional> </dependency> > Thrift maven dependency misses org/slf4j/impl/StaticLoggerBinder which > requires to run thrift client and server > ---------------------------------------------------------------------------------------------------------------- > > Key: THRIFT-3035 > URL: https://issues.apache.org/jira/browse/THRIFT-3035 > Project: Thrift > Issue Type: Bug > Components: Deployment, Java - Library > Reporter: Chamila Dilshan Wijayarathna > > I have added > <dependency> > <groupId>org.apache.thrift</groupId> > <artifactId>libthrift</artifactId> > <version>0.9.2</version> > </dependency> > to the pom.xml of my maven project, which uses thrift. > At run time I'm getting a error as follows > Exception in thread "main" java.lang.NoClassDefFoundError: > org/slf4j/impl/StaticLoggerBinder > at org.slf4j.LoggerFactory.getSingleton(LoggerFactory.java:223) > at org.slf4j.LoggerFactory.bind(LoggerFactory.java:120) > at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:111) > at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:269) > at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:242) > at rpc.node$Processor.<clinit>(node.java:212) > at p2p.Controller.main(Controller.java:168) > Caused by: java.lang.ClassNotFoundException: org.slf4j.impl.StaticLoggerBinder > at java.net.URLClassLoader$1.run(URLClassLoader.java:366) > at java.net.URLClassLoader$1.run(URLClassLoader.java:355) > at java.security.AccessController.doPrivileged(Native Method) > at java.net.URLClassLoader.findClass(URLClassLoader.java:354) > at java.lang.ClassLoader.loadClass(ClassLoader.java:425) > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) > at java.lang.ClassLoader.loadClass(ClassLoader.java:358) > ... 7 more > from node.java file which was the thrift auto generated file. > I believe adding thrift maven dependency should add this dependency to the > project. -- This message was sent by Atlassian JIRA (v6.3.4#6332)