Я пытаюсь открыть исходный код Plumble, я изменил Gradle wrapper distributionUrl на 4.4, а затем появилась эта ошибка gradle
tasks.withType(Compile) { compileTask -> compileTask.dependsOn copyNativeLibs }
Я искал и выяснил в gradle 4.4 "Compile" undefined, и мне нужно использовать 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.
поэтому я заменил
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
pkgTask.jniDir new File(buildDir, 'native-libs')
}
к
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
pkgTask.jniFolders = new HashSet<File>()
pkgTask.jniFolders.add(new File(projectDir, 'native-libs'))
}
но теперь в построении градиента появилась новая ошибка:
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()
кто-нибудь знает, как я могу это исправить? Любая помощь будет высоко ценится
Даже я столкнулся с проблемой. Решение, которое сработало для меня, 1) Обновите сценарий сборки, указав точный URL-адрес репозитория maven. 2) добавить в скрипт apply plugin: maven.
Не могли бы вы дополнить свой ответ более подробной информацией? У меня аналогичная проблема с указанной выше ошибкой.
@Shivani Добавьте точный URL - "repo1.maven.org/maven2" и попробуйте чистую сборку. Он должен работать. В худшем случае удалите проект и перезапустите его с нового места в вашей среде IDE. Опубликуйте обновление, если оно сработало.
Вероятно, вы унаследовали эти сценарии от очень старой версии Android Studio. Сегодня Gradle соберет и упакует для вас нативные библиотеки. Или, если у вас есть готовые библиотеки, добавить их местоположение в jniLibs.