Sha*_*ami 5 java-native-interface android compilation gradle
我正在尝试打开Plumble的源代码,我将gradle wrapper distributionUrl更改为4.4,然后出现了此gradle错误
tasks.withType(Compile) { compileTask -> compileTask.dependsOn copyNativeLibs }
Run Code Online (Sandbox Code Playgroud)
我搜索并发现了gradle 4.4中的“ Compile”是未定义的,我必须使用JavaCompiler来代替,但是随后出现此错误
Could not find method jniDir() for arguments [C:\Users\NP\Desktop\Plumble-Legacy-master\build\native-libs] on task ':packageDebug' of type com.android.build.gradle.tasks.PackageApplication.
Run Code Online (Sandbox Code Playgroud)
所以我换了
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
pkgTask.jniDir new File(buildDir, 'native-libs')
}
Run Code Online (Sandbox Code Playgroud)
至
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
pkgTask.jniFolders = new HashSet<File>()
pkgTask.jniFolders.add(new File(projectDir, 'native-libs'))
}
Run Code Online (Sandbox Code Playgroud)
但是现在gradle构建中出现了新错误:
Cannot cast object '[]' with class 'java.util.HashSet' to class 'org.gradle.api.file.FileCollection' due to: groovy.lang.GroovyRuntimeException: Could not find matching constructor for: org.gradle.api.file.FileCollection()
Run Code Online (Sandbox Code Playgroud)
有谁知道我该如何解决?任何帮助都感激不尽
| 归档时间: |
|
| 查看次数: |
922 次 |
| 最近记录: |