该代码在一个普通的 Java 项目中工作,但如果我在 Android 上尝试它,复制库(.jar)依赖项,它将无法构建:
警告:忽略不带有关联 EnclosureMethod 属性的匿名内部类 (org.apache.commons.collections.BeanMap$1) 的 InnerClasses 属性。此类可能是由不针对现代 .class 文件格式的编译器生成的。推荐的解决方案是从源代码重新编译类,使用最新的编译器并且不指定任何“-target”类型选项。忽略此警告的后果是此类上的反射操作将错误地指示它不是内部类。
它最后说:
6 个警告 1 个错误;aborting /home/kp/android-sdk-linux/tools/ant/build.xml:818:执行此行时出现以下错误:/home/kp/android-sdk-linux/tools/ant/build.xml: 820:执行此行时出现以下错误:/home/kp/android-sdk-linux/tools/ant/build.xml:832:执行此行时出现以下错误:/home/kp/android-sdk- linux/tools/ant/build.xml:278: null 返回: 1
我添加了所有库:
- commons-codec-1.4.jar
- commons-collections-3.2.1.jar
- commons-io-2.0.1.jar
- commons-lang-2.6.jar
- commons-logging-1.1.1.jar
- cssparser-0.9.5.jar
- htmlunit-2.9.jar
- htmlunit-core-js-2.9.jar
- httpclient-4.1.2.jar
- httpcore-4.1.2.jar
- httpmime-4.1.2.jar
- nekohtml-1.9.15.jar
- sac-1.3.jar
- 序列化程序-2.7.1.jar
- xalan-2.7.1.jar
- xercesImpl-2.9.1.jar
- xml-apis-1.3.04.jar
如果我删除一些依赖项,它会构建,但是当它尝试执行我的代码时,_client = new WebClient();
我会收到 noClassDefFoundError 错误。
我还没有找到解决方案,所以如果你有解决方案,请分享!