Как построить мой язык Xtext с Gradle для Android

Я написал test-DSL в xtext и сгенерировал плагин IntelliJ. У меня есть небольшой Android-тестовый проект, и в Android Studio появляется мой DSL-редактор, который также генерирует выходные файлы, как и ожидалось.

Теперь я пытаюсь настроить gradle для генерации файлов, но это приводит к ошибке.

Я нашел раздел интеграции Android для xtext-builder. Это кажется устаревшим (например, это относится к org.xtext.android, чего не существует - ссылка там тоже битая).

Во всяком случае, в репозитории xtext-gradle-plugin github есть org.xtext.android.builder Плагин: я думаю, это правильный.

Мой проект build.gradle файл выглядит так (только соответствующие части):

buildscript {
    repositories {
        maven {
            url "https://plugins.gradle.org/m2/" // needed for org.xtext:xtext-android-gradle-plugin
        }
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.3'
        classpath "org.xtext:xtext-android-gradle-plugin:1.0.14"
    }
}

allprojects {
    repositories {
        jcenter()
        mavenLocal() // This is required so that the mydsl language is found
    }
}

когда я активирую org.xtext.android.builder плагин в build.gradle файл в моем модуле приложения:

apply plugin: 'com.android.application'
apply plugin: "org.xtext.android.builder" // causes the Error!

Я получаю эту ошибку:

Error:Unable to find method 'com.android.build.gradle.api.BaseVariant.getJavaCompiler()Lorg/gradle/api/tasks/compile/AbstractCompile;'...

Я предполагаю, что есть какое-то несоответствие версии или что-то не соответствует действительности.
Есть идеи?

1 ответ

Решение

Это была ошибка (#73) в https://github.com/xtext/xtext-gradle-plugin. Это было исправлено в версии 1.0.16.

Другие вопросы по тегам