Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用easywsdl生成的代码和ksoap2生成.apk时出错_Java_Android_Android Studio_Ksoap2_Easywsdl - Fatal编程技术网

Java 使用easywsdl生成的代码和ksoap2生成.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

尝试使用android studio在手机上构建.apk时出现以下错误:

: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')
}