сборка не работает, когда добавить dataBinding - PullRequest
1 голос
/ 21 января 2020

некоторая помощь будет высоко оценена. Я внедряю 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

Я действительно ценю, если кто-то прояснит этот вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...