UglyTroLL/Douban-Java-SDK-OAuth2

clone 到本地之后使用mvn install 打包,在项目中调用报错

Closed this issue · 4 comments

我在测试playground.java的testAccessToken()报错
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/client/methods/HttpRequestBase
at com.dongxuexidu.douban4j.utils.HttpManager.(HttpManager.java:43)
at com.dongxuexidu.douban4j.provider.OAuthDoubanProvider.tradeAccessTokenWithCode(OAuthDoubanProvider.java:154)
at date.demo.testAccessToken(demo.java:41)
at date.demo.main(demo.java:23)
Caused by: java.lang.ClassNotFoundException: org.apache.http.client.methods.HttpRequestBase
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)
... 4 more

使用mvn install 打包显示的是build successfu. 请问调用的时候为什么出现这个问题么?不是所有的依赖都自动下载好了么?

我也遇到同样问题,求解答

没解决,放弃了。作者说别人的SDK做的烂,但是我也没看出来作者的有多么好用。

这个问题我这几天看了下。作者用的google httpclient包,我们项目中比较常用的可能是apache httpclient包,这两个包中有很多类用的报名和类名都一样。项目报错时提示找不到类,很可能是跑到apache httpclient下找这个类了,你不引入apache httpclient应该就没问题了。PS,微博等其他同类提供的sdk都比较一致,用起来也好用,搞不懂豆瓣为何自己官方不好好搞一个。。作者自己做得很一般,为何还喷别人做的不好,我觉得微博做得非常好。

抱歉,这个sdk已经有两三年不更新了。
当时做的时候是豆瓣API V2还在beta的时候,所以当时为了支持V1(他们当时使用的是Atom 和 GData的标准,而不是现在所有都是json),所以用的都是google的库。