小编Sha*_*ami的帖子

Android资源链接失败

有谁知道这个错误是什么,我该如何解决这个问题?我试图从Mumble打开源代码并坚持这个错误

Android resource linking failed
Output:  C:\Users\NP\Desktop\Plumble-Legacy-master\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:352: error: resource android:attr/popupPromptView is private.
error: failed linking references.

Command: C:\Users\NP\.gradle\caches\transforms-1\files-1.1\aapt2-3.2.0-alpha17-4804415-windows.jar\1d0ef7dbf7bb928283477115487f45e4\aapt2-3.2.0-alpha17-4804415-windows\aapt2.exe link -I\
    C:\dev\sdk\android-sdk-essential-3.1.3\platforms\android-27\android.jar\
    --manifest\
    C:\Users\NP\Desktop\Plumble-Legacy-master\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml\
    -o\
    C:\Users\NP\Desktop\Plumble-Legacy-master\build\intermediates\processed_res\debug\processDebugResources\out\resources-debug.ap_\
    -R\
    @C:\Users\NP\Desktop\Plumble-Legacy-master\build\intermediates\incremental\processDebugResources\resources-list-for-resources-debug.ap_.txt\
    --auto-add-overlay\
    --java\
    C:\Users\NP\Desktop\Plumble-Legacy-master\build\generated\not_namespaced_r_class_sources\debug\processDebugResources\r\
    --custom-package\
    com.morlunk.mumbleclient\
    -0\
    apk\
    --output-text-symbols\
    C:\Users\NP\Desktop\Plumble-Legacy-master\build\intermediates\symbols\debug\R.txt\
    --no-version-vectors
Daemon:  AAPT2 aapt2-3.2.0-alpha17-4804415-windows Daemon #0
Run Code Online (Sandbox Code Playgroud)

android gradle aapt2

8
推荐指数
3
解决办法
2万
查看次数

无法使用类'java.util.HashSet'转换对象'[]'

我正在尝试打开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)

有谁知道我该如何解决?任何帮助都感激不尽

java-native-interface android compilation gradle

5
推荐指数
1
解决办法
922
查看次数