Подтвердить что ты не робот

Android Studio Не удается загрузить класс 'org.codehaus.groovy.runtime.typehandling.ShortTypeHandling'

Я установил Android Studio, и когда я пытаюсь импортировать проект из gradle, эта ошибка разрешения появляется:

Невозможно загрузить класс 'Org.codehaus.groovy.runtime.typehandling.ShortTypeHandling'.

Я удалил файлы в папке Мои пользователи .gradle и попробовал разные версии gradle. Я не знаю, как это исправить.

4b9b3361

Ответ 1

Эта страница может помочь решить проблему. Они говорят:

Итак, мы использовали эту версию для добавления нового артефакта, названного groovy -backports-compat23. Этот артефакт не должен быть необходим для большинство из вас, но если вы столкнулись с такой ошибкой, как:

Caused by: java.lang.ClassNotFoundException:
org.codehaus.groovy.runtime.typehandling.ShortTypeHandling    at
java.net.URLClassLoader$1.run(URLClassLoader.java:372)

в вашем проекте, то это означает, что класс был скомпилирован с Groovy 2.3+, но вы пытаетесь использовать его со старой версией Groovy. Добавив эту банку в classpath, вы дадите программы для запуска. Это может быть особенно интересно для пользователей Gradleкоторые хотят использовать плагин, построенный на Gradle 2+, в более старых версиях Gradle и столкнуться с этой ошибкой. Добавление следующей строки в их сборку файлы должны помочь:

buildscript {
    // ...
    dependencies {
         classpath 'some plugin build on gradle 2'
         classpath 'org.codehaus.groovy:groovy-backports-compat23:2.3.5'
    } }

Обратите внимание, что на данный момент этот баннер содержит только ShortTypeHandlingClass. В будущих версиях может быть больше. - См. Больше на: http://glaforge.appspot.com/article/groovy-2-3-5-out-with-upward-compatibility#sthash.mv7Y8XQv.dpuf

Ответ 2

Я могу исправить это сообщение об ошибке, используя эти три метода.

  • используйте последнюю версию gradle
  • используйте последние SDK и инструменты для Android.
  • использовать proguard-rules.pro

build.gradle(Project: xxxxx)

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
         classpath 'com.android.tools.build:gradle:1.2.3'
    }
}

allprojects {
    repositories {
        mavenCentral()
    }
}

build.gradle(модуль: приложение)

apply plugin: 'android'

android {
    compileSdkVersion 22
    buildToolsVersion "21.1.2"

    defaultConfig {
        minSdkVersion 11
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile 'com.android.support:appcompat-v7:+'
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

Ответ 3

У меня была та же проблема. Я запустил gradle из командной строки, и это сработало. После этого я нашел File → Settings → Build, Execution, Deployment → Build Tools → Gradle. Там "Использовать локальный дистрибутив gradle" был активным. Изменил его на "Использовать оболочку по умолчанию gradle (рекомендуется)", и она сработала.

Ответ 4

У меня была такая же проблема. И я нашел решение.

Причина

Эта проблема вызвана тем, что плагин android gradle не соответствует версии gradle.

Решение

Измените build.gradle в проекте. gradle версия для плагина должна удовлетворять требованиям для студии android.

dependencies {
   classpath 'com.android.tools.build:gradle:1.1.0'
}

И отредактируйте правило Url в gradle/wrapper/gradle-wrapper.properties. версия gradle должна удовлетворять требованиям для плагина gradle.

distributionUrl=http\://services.gradle.org/distributions/gradle-2.2.1-all.zip

Вы можете найти совместимость версий между сайтом android studio, android gradle и gradle на этой странице

fooobar.com/info/144525/...