Невозможно установить значение свойства "только для чтения" "jniFolders" для задачи: android: packageDebug '
Я хотел открыть и спроектировать в студии Android, в которой я не работал некоторое время, но когда Android Studio пытается загрузить проект, он не работает с этим сообщением об ошибке:
Error:(21, 0) Cannot set the value of read-only property 'jniFolders' on task ':android:packageDebug'.
Я нажимаю ссылку на build.gradle
, и я думаю, что эти строки являются проблемой...
// needed to add JNI shared libraries to APK when compiling on CLI
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
pkgTask.jniFolders = new HashSet<File>()
pkgTask.jniFolders.add(new File(projectDir, 'libs'))
}
Я вижу ответ здесь: Google AppInvites break build, который говорит...
Исправлено добавлением:
android {
sourcesets {
main {
jniLibs.srcDir new File(buildDir, 'lib')
{
}
}
Но вышеупомянутый ответ не очень ясен. Я не уверен, какую строку изменить, и фигурные скобки в ответе, похоже, не совпадают.
У меня полная потеря в том, что делать? Любая помощь приветствуется.
Спасибо
Ответы
Ответ 1
Хорошо мне пришлось изменить начало моего файла build.gradle на это....
android {
buildToolsVersion project.androidToolsVersion
compileSdkVersion project.androidSDKVersion.toInteger()
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
jniLibs.srcDir 'libs'
}
instrumentTest.setRoot('tests')
}
}
/*RBC
// needed to add JNI shared libraries to APK when compiling on CLI
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
pkgTask.jniFolders = new HashSet<File>()
pkgTask.jniFolders.add(new File(projectDir, 'libs'))
}
RBC*/
Я добавил строку:
jniLibs.srcDir 'libs'
и я прокомментировал
// needed to add JNI shared libraries to APK when compiling on CLI
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
pkgTask.jniFolders = new HashSet<File>()
pkgTask.jniFolders.add(new File(projectDir, 'libs'))
}
В файле C:\Users\plankton\Desktop\ThePlaneThatCouldntFly\flappytrip\android\build.gradle
.
Я пришел к этому решению после прочтения этого https://github.com/libgdx/libgdx/issues/3027
Ответ 2
Я столкнулся с этой же проблемой при попытке импортировать образцы libgdx-cookbook из "Поваренной книги по развитию кросс-платформенной игры Libgdx" в Android Studio 2.1 0,1. В моем случае это было решено просто:
- импортировать проект
/samples
;
- не обновлять плагин Gradle при появлении запроса;
-
обновить файл build.gradle
под подпроектом android, чтобы использовать buildToolsVersion
и compileSkdVersion
, которые у меня были:
buildToolsVersion "23.0.3"
compileSdkVersion 23
-
повторить попытку.
Так что это может быть связано с версией плагина Gradle.