некоторая помощь будет высоко оценена. Я внедряю Jenkins для CI, мой проект работает нормально, и в Jenkins я хотел внедрить gradle-скрипт в Jenkins, простой "assemblyDebug" только для тестирования, и тогда все началось с ума.
Это начинается с этой проблемы при вызове приложения ./gradlew app: assemblyDebug
Execution failed for task ':app:compileDebugJavaWithJavac'.
> javax/xml/bind/JAXBException
После долгих исследований я обнаружил, что эта библиотека устарела в Java 9, поэтому я просто добавляю эта строка для моего gradle.properties:
org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_241.jdk/Contents/Home
Создайте мой проект локально и начните работать снова. Но в Jenkins не работает его возвращаемое сообщение, которое не является допустимым JAVA_HOME. Я полагаю, что не следует использовать локальные переменные, даже если сервер находится на моем локальном компьютере.
Я создаю новый проект и начинаю добавлять библиотеки, чтобы уловить проблему, и обнаружил, что проблема возникает, когда я добавляю:
android {
...
dataBinding {
enabled = true
}
...
Если убрать эти строки, Gradle запускается без проблем. даже из совершенно нового проекта. Это то, что я получаю от своего ./gradle --version
------------------------------------------------------------
Gradle 5.4.1
------------------------------------------------------------
Build time: 2019-04-26 08:14:42 UTC
Revision: 261d171646b36a6a28d5a19a69676cd098a4c19d
Kotlin: 1.3.21
Groovy: 2.5.4
Ant: Apache Ant(TM) version 1.9.13 compiled on July 10 2018
JVM: 12.0.1 (Oracle Corporation 12.0.1+12)
OS: Mac OS X 10.14.6 x86_64
Я действительно ценю, если кто-то прояснит этот вопрос.