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

Не удалось определить версию java из "9.0.1"

Попробуйте загрузить проект на bintray и просто получите ошибку:

Could not determine java version from '9.0.1'.

Я прочитал, что это ошибка класса, и она исправлена ​​в верхних версиях, я пробовал измените версию gradle на 4.2.1, но получите еще одну ошибку:

Gradle Ошибка синхронизации: нет такого свойства: FOR_RUNTIME для класса: org.gradle.api.attributes.Usage Проконсультируйтесь с журналом IDE для получения более подробной информации (Справка | Показать журнал) (571ms)

Gradle свойства:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.2.1-all.zip

Проект gradle

buildscript {
    ext.kotlin_version = '1.1.51'

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0-beta7'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath 'com.novoda:bintray-release:0.5.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}
4b9b3361

Ответ 1

Вы также должны удалить Java JDK. Просто запустите следующее:

  • cd/Library/Java/JavaVirtualMachines
  • sudo rm -rf jdk1

Теперь проверяем ввод "java" в вашем терминале.

Дополнительные ссылки вы можете посмотреть здесь: https://www.howtogeek.com/230145/how-to-uninstall-java-on-mac-os-x/

Ответ 2

Эта проблема была в версии gradle ниже 4.3, поэтому обновите gradle.properties до 4.3 или выше:

<Предварительно > <код > distributionUrl = HTTPS \://services.gradle.org/distributions/gradle-4.3-all.zip Код >

Почему эта ошибка возникает?: Из-за того, что у вас в вашей системе есть другой JDK, чем версия вашего Android-студии JDK.

Поэтому ваш JDK должен быть совместим друг с другом, и следующим образом вы можете управлять этим:

Файл Другие настройки Структура проекта по умолчанию

введите описание изображения здесь

Вы можете использовать встроенный JDK или использовать свой собственный.


Также у вас могут возникнуть проблемы с terminal, и это связано с конфликтом между вашим несколькими JDK.

Решение работало со мной - удалить java 9 JDK.

Ответ 3

У меня была эта проблема на macOS, и я решил ее:

Удаление слишком нового java jdk

brew cask uninstall java

И установка более старого

brew tap caskroom/versions
brew cask install java8

Все это обрабатывается через Homebrew

Ответ 4

В моем случае ошибка была

Не удалось определить версию java от "10".

Я пошел на предпочтения в Unity (изменить > предпочтения в Windows или Unity > предпочтения в MAC), внешние инструменты, JDK dir и изменились, поднялись на пару уровней. Я использовал JDK 10, но перешел в папку JDK 8, и это решило проблему.

Ответ 5

просто попытался построить с помощью Gradle 4.3, против JDK 9.0.1 - возможно, это работает в Android Studio (потому что связанный JDK является старшей версией), но не при создании с Jenkins 2.89.2 (который, похоже, еще не поддерживает JDK 9.0.1, буквально жалуясь Could not determine java version from '9.0.1'). bintray также может работать с Jenkins, потому что сообщение об ошибке несколько идентично.

понижение до JDK 8 в gradle.properties исправило проблему для меня:

org.gradle.java.home=/usr/java/jdk1.8.0_152

в сочетании с gradle-wrapper.properties:

distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip

Ответ 6

Просто нужно использовать локальный дистрибутив gradle Например: В IntelliJ перейдите в File- > settings- > Build, Execution, Deployment- > Build Tools → Gradle, затем обновите "Использовать локальный дистрибутив gradle", как показано на рисунке.

окно настроек