Java 使用easywsdl生成的代码和ksoap2生成.apk时出错
尝试使用android studio在手机上构建.apk时出现以下错误:Java 使用easywsdl生成的代码和ksoap2生成.apk时出错,java,android,android-studio,ksoap2,easywsdl,Java,Android,Android Studio,Ksoap2,Easywsdl,尝试使用android studio在手机上构建.apk时出现以下错误: :app:transformResourcesWithMergeJavaResForDebug FAILED :app:transformResourcesWithMergeJavaResForDebug FAILED Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'. > com.android.bui
:app:transformResourcesWithMergeJavaResForDebug FAILED
:app:transformResourcesWithMergeJavaResForDebug FAILED
Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.
> com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/maven/com.google.code.ksoap2-android/ksoap2-android-assembly/pom.properties
File1: /home/me/project/android-proj/app/libs/easywsdl/ksoap2-android-assembly-3.6.1-jar-with-dependencies.jar
File2: /home/me/project/android-proj/app/libs/easywsdl/ExKsoap2-1.0.1.6.jar
上下文是我正在使用一堆easywsdl自动生成的代码与web服务进行通信。我刚刚对web服务进行了一些修改,因此必须重新生成easywsdl代码。这似乎引入了一个新的依赖项,ksoap2-android-assembly-3.6.1-jar-with-dependencies.jar,而以前是ksoap2-android-assembly-3.6.0-jar-with-dependencies.jar
我已经进入build.gradle文件并注释掉了对prev.jar文件的依赖,即
dependencies {
compile 'com.android.support:support-v4:18.0.0'
// compile files('libs/easywsdl/ksoap2-android-assembly-3.6.0-jar-with-dependencies.jar')
compile files('libs/easywsdl/ExKsoap2-1.0.1.6.jar')
compile files('libs/easywsdl/ksoap2-android-assembly-3.6.1-jar-with-dependencies.jar')
}
更新
仔细阅读错误消息并仔细思考,我查看了.jar文件并注意到以下文件:
META-INF/maven/com.google.code.ksoap2-android/ksoap2-android/pom.properties
两者都存在
ksoap2-android-assembly-3.6.1-jar-with-dependencies.jar
及
在这两种情况下,该文件的内容都是相同的
我还注意到META-INF/maven/com.google.code.ksoap2-android/ksoap2-android/pom.properties
中也有ksoap2-android-assembly-3.6.0-jar-with-dependencies.jar
(在一切正常工作时使用的上一个.jar文件)所以我的想法是,ExKsoap2-1.0.1.6.jar
已经更改,现在错误地包含了这个文件的副本
如果我可以从ExKsoap2-1.0.1.6.jar
中删除这个文件,那么它可能会解决这个问题。不过我还不知道怎么做
更新2
现在,以下mod已将其修复到build.gradle
文件中:
dependencies {
compile 'com.android.support:support-v4:18.0.0'
// compile files('libs/easywsdl/ksoap2-android-assembly-3.6.0-jar-with-dependencies.jar')
compile files('libs/easywsdl/ExKsoap2-1.0.1.6.jar')
// compile files('libs/easywsdl/ksoap2-android-assembly-3.6.1-jar-with-dependencies.jar')
}
i、 e.注释掉所有与ksoap相关的依赖项,而不是
ExKsoap2-1.0.1.6.jar
可能的重复项我不认为它是..它肯定不是这个的重复项-问题是android studio应该自动删除.jar依赖项中的重复文件,但出于某种原因,它不再为我这样做了-希望我可以找出原因..查看此链接了解更多详细信息-现在已修复-请参阅更新2可能的重复我不认为它是..它肯定不是此的重复-问题是android studio应该自动删除.jar依赖项中的重复文件,但由于某些原因,它不再为我这样做-希望我能找出原因..请参阅此链接了解更多详细信息-现已修复-请参阅更新2
dependencies {
compile 'com.android.support:support-v4:18.0.0'
// compile files('libs/easywsdl/ksoap2-android-assembly-3.6.0-jar-with-dependencies.jar')
compile files('libs/easywsdl/ExKsoap2-1.0.1.6.jar')
// compile files('libs/easywsdl/ksoap2-android-assembly-3.6.1-jar-with-dependencies.jar')
}