Intereting Posts
Заменяйте двойным для каждого наблюдаемым Исключение, вызванное: java.lang.ClassNotFoundException: org.reactivestreams.Publisher Предупреждение: опция '-d' с назначением каталога игнорируется, поскольку указан '-module' Kotlin: java.lang.UnsupportedOperationException в элементе добавления MutableList убедитесь, что метод kotlin является статическим, верхним или аннотированным @JvmStatic Ошибка базы данных Android Room: неиспользуемый параметр: дни в функции @Query Почему код в выражении объекта может обращаться к переменным из области, содержащей его в kotlin? Kotlin coroutines CalledFromWrongThreadException Какова цель возврата единиц в функции KDoc: Вставить фрагмент кода Как установить статическое свойство в классе в Kotlin для Javascript GMaps Android API и GeoJson, как покрыть весь мир дырой RxJava отличается от Flowable и Observable с помощью Window и Groupby Применение перечисления состоит из 3 адаптеров между 2 действиями в Котлине Открытые поля для совместимости с Java

Можно ли запустить плагин kotlin grade с помощью jdk 7

В моем проекте используется jdk 7 по соображениям совместимости.

нижняя часть build.gradle

 buildscript { ext.kotlin_version = '1.2.0' repositories { mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } 

Когда я использую jdk 7 для градиента, я получаю следующее:

 java.lang.UnsupportedClassVersionError: org/jetbrains/kotlin/gradle/KotlinGradleModel : Unsupported major.minor version 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:800) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) at java.net.URLClassLoader.access$100(URLClassLoader.java:71) at java.net.URLClassLoader$1.run(URLClassLoader.java:361) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:270) at org.gradle.tooling.internal.provider.serialization.DefaultPayloadClassLoaderRegistry$2.resolveClass(DefaultPayloadClassLoaderRegistry.java:91) at org.gradle.tooling.internal.provider.serialization.WellKnownClassLoaderRegistry$2.resolveClass(WellKnownClassLoaderRegistry.java:91) at org.gradle.tooling.internal.provider.serialization.PayloadSerializerObjectInputStream.readClass(PayloadSerializerObjectInputStream.java:66) ... cut 

Если я переключусь на jdk 8 для запуска класса, в то время как jdk проекта jdk все еще остается jdk7, сборка будет успешной. Это ожидаемое поведение?

После нескольких часов исследований я, наконец, нашел этот пост:

https://blog.jetbrains.com/kotlin/2017/04/kotlin-1-1-2-is-out/

Компилятор Kotlin теперь требует запуска JDK 8. Вы не должны замечать никаких изменений, потому что для большинства других инструментов разработки Java, таких как Gradle и Android toolchain, также требуется JDK 8, поэтому вы почти наверняка уже установили его. Для кода, сгенерированного компилятором, совместимость с Java 1.6 по-прежнему по умолчанию, и мы не планируем отказаться от поддержки для создания байт-кода, совместимого с Java 1.6.

Итак, ответ – нет.