Как использовать JDK из зависимости в Gradle?

Я пытаюсь использовать Checker Framework с помощью Gradle. Официальные документы ожидают, что переменная среды будет указывать на аннотированный JDK:

options.forkOptions.executable = "$CHECKERFRAMEWORK/checker/bin/javac"

Однако можно управлять зависимостью от Checker Framework через Gradle:

dependencies {
    checker "org.checkerframework:checker:1.9.6"
    checker 'org.checkerframework:jdk8:1.9.6'
    compile configurations.checker.dependencies
    compile 'com.google.guava:guava:19.0'
}

Как мне лучше всего получить путь к javac в Gradle из зависимости от org.checkerframework:jdk8?


person John Freeman    schedule 30.01.2016    source источник
comment
В jar-файле нет исполняемого файла javac для зависимости jdk8:1.9.6 Документация по проверке, на которую вы ссылались, вероятно, предполагает, что вы загрузите структуру проверки в свою файловую систему и установите путь к javac в вашем build.gradle.   -  person RaGe    schedule 30.01.2016
comment
Ответ SO, на который вы ссылаетесь, использует -Xbootclasspath, как показано в примере maven чуть выше раздела gradle документации по проверке, на которую вы ссылались. Казалось бы, то, что показывает другой ответ SO, является единственным способом сделать это, если вы хотите использовать зависимость jdk8.   -  person RaGe    schedule 30.01.2016