我正在使用最新的使用httpclient 4.2.4的Sardine https://github.com/lookfirst/sardine WebDav客户端 我正在尝试使用httpclient 4.0.1
的4.1.1.4通过排除,它可以完美地构建
<dependency>
<groupId>com.google.android</groupId>
<artifactId>android</artifactId>
<version>${platform.version}</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<artifactId>httpclient</artifactId>
<groupId>org.apache.httpcomponents</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.actionbarsherlock</groupId>
<artifactId>actionbarsherlock</artifactId>
<version>4.4.0</version>
<type>apklib</type>
</dependency>
<dependency>
<groupId>com.j256.ormlite</groupId>
<artifactId>ormlite-core</artifactId>
<version>4.47</version>
</dependency>
<dependency>
<groupId>com.j256.ormlite</groupId>
<artifactId>ormlite-android</artifactId>
<version>4.47</version>
</dependency>
<dependency>
<groupId>com.github.lookfirst</groupId>
<artifactId>sardine</artifactId>
<version>5.0.1</version>
</dependency>
但是在Sardine init方法的运行时间我得到了
AndroidRuntime﹕ FATAL EXCEPTION: main
java.lang.NoSuchMethodError: org.apache.http.conn.scheme.Scheme.<init>
意味着它很可能尝试使用旧版本的httpclient。如何使用4.2.4 httpclient版本强制它?
答案 0 :(得分:1)
排除平台提供的库可能没什么意义,如果它存在那里
对这个问题有一个评论 - Latest Apache HttpClient in Android SDK - 但我不认为你会这样做。
所以我认为你被卡住了,除非你想重构沙丁鱼以使用上面帖子中提到的httpclient的替代包装。