3

I recently set up a Jenkins build server for my Android projects running on Ubuntu 16.04. I've got it mostly working to where it will pull from GitHub and attempt to build a project. For some reason whenever I set up a task to run gradlew build or gradlew assembleDebug, it always fails with some AAPT2 error. I say some because one project is giving me a different AAPT2 error than another project. Both of these projects compile without problem on my local Windows machine.

Jenkins is pointed to the most recent sdk-tools (https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip) located at /opt/android-sdk on the Jenkins machine. The Jenkins machine is configured with oracle-java-8.

The console output for project 1:

[Gradle] - Launching build.
[Test] $ /var/lib/jenkins/workspace/Test/gradlew clean assembleDebug
Starting a Gradle Daemon (subsequent builds will be faster)
File /var/lib/jenkins/.android/repositories.cfg could not be loaded.
Checking the license for package Android SDK Build-Tools 27.0.3 in /opt/android-sdk/licenses
License for package Android SDK Build-Tools 27.0.3 accepted.
Preparing "Install Android SDK Build-Tools 27.0.3 (revision: 27.0.3)".
"Install Android SDK Build-Tools 27.0.3 (revision: 27.0.3)" ready.
Installing Android SDK Build-Tools 27.0.3 in /opt/android-sdk/build-tools/27.0.3
"Install Android SDK Build-Tools 27.0.3 (revision: 27.0.3)" complete.
"Install Android SDK Build-Tools 27.0.3 (revision: 27.0.3)" finished.
Checking the license for package Android SDK Platform 27 in /opt/android-sdk/licenses
License for package Android SDK Platform 27 accepted.
Preparing "Install Android SDK Platform 27 (revision: 3)".
"Install Android SDK Platform 27 (revision: 3)" ready.
Installing Android SDK Platform 27 in /opt/android-sdk/platforms/android-27
"Install Android SDK Platform 27 (revision: 3)" complete.
"Install Android SDK Platform 27 (revision: 3)" finished.
Checking the license for package Android SDK Platform-Tools in /opt/android-sdk/licenses
License for package Android SDK Platform-Tools accepted.
Preparing "Install Android SDK Platform-Tools (revision: 28.0.0)".
"Install Android SDK Platform-Tools (revision: 28.0.0)" ready.
Installing Android SDK Platform-Tools in /opt/android-sdk/platform-tools
"Install Android SDK Platform-Tools (revision: 28.0.0)" complete.
"Install Android SDK Platform-Tools (revision: 28.0.0)" finished.
:clean
:app:clean
:app:preBuild UP-TO-DATE
:app:preDebugBuild
:app:compileDebugAidl
:app:compileDebugRenderscript
:app:checkDebugManifest
:app:generateDebugBuildConfig
:app:mainApkListPersistenceDebug
:app:generateDebugResValues
:app:generateDebugResources
:app:mergeDebugResourcesAAPT err(Facade for 27706406): /opt/android-sdk/build-tools/27.0.3/aapt2: 1: /opt/android-sdk/build-tools/27.0.3/aapt2: Syntax error: "(" unexpected
AAPT err(Facade for 26922534): /opt/android-sdk/build-tools/27.0.3/aapt2: 1: /opt/android-sdk/build-tools/27.0.3/aapt2: Syntax error: "(" unexpected
AAPT err(Facade for 32626108): /opt/android-sdk/build-tools/27.0.3/aapt2: 1: /opt/android-sdk/build-tools/27.0.3/aapt2: Syntax error: "(" unexpected
AAPT err(Facade for 26996178): /opt/android-sdk/build-tools/27.0.3/aapt2: 1: /opt/android-sdk/build-tools/27.0.3/aapt2: Syntax error: "(" unexpected
Slave 32626108 failed to start
java.lang.RuntimeException: AAPT slave failed to start. Please make sure the current build tools (located at /opt/android-sdk/build-tools/27.0.3/aapt2) are not corrupted.
    at com.android.builder.png.AaptProcess.waitForReadyOrFail(AaptProcess.java:193)
    at com.android.builder.internal.aapt.AaptQueueThreadContext.creation(AaptQueueThreadContext.java:56)
    at com.android.builder.tasks.WorkQueue.run(WorkQueue.java:250)
    at java.lang.Thread.run(Thread.java:748)
Slave 26922534 failed to start
java.lang.RuntimeException: AAPT slave failed to start. Please make sure the current build tools (located at /opt/android-sdk/build-tools/27.0.3/aapt2) are not corrupted.
    at com.android.builder.png.AaptProcess.waitForReadyOrFail(AaptProcess.java:193)
    at com.android.builder.internal.aapt.AaptQueueThreadContext.creation(AaptQueueThreadContext.java:56)
    at com.android.builder.tasks.WorkQueue.run(WorkQueue.java:250)
    at java.lang.Thread.run(Thread.java:748)
Slave 27706406 failed to start
java.lang.RuntimeException: AAPT slave failed to start. Please make sure the current build tools (located at /opt/android-sdk/build-tools/27.0.3/aapt2) are not corrupted.
    at com.android.builder.png.AaptProcess.waitForReadyOrFail(AaptProcess.java:193)
    at com.android.builder.internal.aapt.AaptQueueThreadContext.creation(AaptQueueThreadContext.java:56)
    at com.android.builder.tasks.WorkQueue.run(WorkQueue.java:250)
    at java.lang.Thread.run(Thread.java:748)
Exception in thread "queued-resource-processor_1" java.util.MissingFormatArgumentException: Format specifier '%1$s'
Slave 26996178 failed to start
java.lang.RuntimeException: AAPT slave failed to start. Please make sure the current build tools (located at /opt/android-sdk/build-tools/27.0.3/aapt2) are not corrupted.
    at com.android.builder.png.AaptProcess.waitForReadyOrFail(AaptProcess.java:193)
    at com.android.builder.internal.aapt.AaptQueueThreadContext.creation(AaptQueueThreadContext.java:56)
    at com.android.builder.tasks.WorkQueue.run(WorkQueue.java:250)
    at java.lang.Thread.run(Thread.java:748)
    at java.util.Formatter.format(Formatter.java:2525)
    at java.util.Formatter.format(Formatter.java:2455)
    at java.lang.String.format(String.java:2940)
    at com.android.build.gradle.internal.aapt.AaptGradleFactory$FilteringLogger.shouldDowngrade(AaptGradleFactory.java:156)
    at com.android.build.gradle.internal.aapt.AaptGradleFactory$FilteringLogger.error(AaptGradleFactory.java:122)
    at com.android.builder.tasks.WorkQueue.run(WorkQueue.java:253)
    at java.lang.Thread.run(Thread.java:748)
Exception in thread "queued-resource-processor_4" java.util.MissingFormatArgumentException: Format specifier '%1$s'
    at java.util.Formatter.format(Formatter.java:2525)
    at java.util.Formatter.format(Formatter.java:2455)
    at java.lang.String.format(String.java:2940)
    at com.android.build.gradle.internal.aapt.AaptGradleFactory$FilteringLogger.shouldDowngrade(AaptGradleFactory.java:156)
    at com.android.build.gradle.internal.aapt.AaptGradleFactory$FilteringLogger.error(AaptGradleFactory.java:122)
    at com.android.builder.tasks.WorkQueue.run(WorkQueue.java:253)
    at java.lang.Thread.run(Thread.java:748)
Exception in thread "queued-resource-processor_3" java.util.MissingFormatArgumentException: Format specifier '%1$s'
    at java.util.Formatter.format(Formatter.java:2525)
    at java.util.Formatter.format(Formatter.java:2455)
    at java.lang.String.format(String.java:2940)
    at com.android.build.gradle.internal.aapt.AaptGradleFactory$FilteringLogger.shouldDowngrade(AaptGradleFactory.java:156)
    at com.android.build.gradle.internal.aapt.AaptGradleFactory$FilteringLogger.error(AaptGradleFactory.java:122)
    at com.android.builder.tasks.WorkQueue.run(WorkQueue.java:253)
    at java.lang.Thread.run(Thread.java:748)
Exception in thread "queued-resource-processor_2" java.util.MissingFormatArgumentException: Format specifier '%1$s'
    at java.util.Formatter.format(Formatter.java:2525)
    at java.util.Formatter.format(Formatter.java:2455)
    at java.lang.String.format(String.java:2940)
    at com.android.build.gradle.internal.aapt.AaptGradleFactory$FilteringLogger.shouldDowngrade(AaptGradleFactory.java:156)
    at com.android.build.gradle.internal.aapt.AaptGradleFactory$FilteringLogger.error(AaptGradleFactory.java:122)
    at com.android.builder.tasks.WorkQueue.run(WorkQueue.java:253)
    at java.lang.Thread.run(Thread.java:748)

Error: java.util.concurrent.ExecutionException: java.lang.RuntimeException: No server to serve request. Check logs for details.
:app:createDebugCompatibleScreenManifests
:app:processDebugManifest
:app:splitsDiscoveryTaskDebug
:app:prepareLintJar UP-TO-DATE
:app:compileDebugNdk NO-SOURCE
:app:mergeDebugShaders
:app:compileDebugShaders
:app:generateDebugAssets
:app:mergeDebugAssets
:app:mergeDebugJniLibFolders
:app:transformNativeLibsWithMergeJniLibsForDebug
:app:processDebugJavaRes NO-SOURCE
:app:validateSigningDebug
:app:mergeDebugResources FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:mergeDebugResources'.
> Error: java.util.concurrent.ExecutionException: java.lang.RuntimeException: No server to serve request. Check logs for details.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 4m 33s
20 actionable tasks: 19 executed, 1 up-to-date
Build step 'Invoke Gradle script' changed build result to FAILURE
Build step 'Invoke Gradle script' marked build as failure
Finished: FAILURE

The console output for project 2:

[Gradle] - Launching build.
[ProjectName] $ /var/lib/jenkins/workspace/ProjectName/gradlew clean assembleDebug
Starting a Gradle Daemon (subsequent builds will be faster)
File /var/lib/jenkins/.android/repositories.cfg could not be loaded.
Checking the license for package Android SDK Platform 28 in /opt/android-sdk/licenses
License for package Android SDK Platform 28 accepted.
Preparing "Install Android SDK Platform 28 (revision: 4)".
"Install Android SDK Platform 28 (revision: 4)" ready.
Installing Android SDK Platform 28 in /opt/android-sdk/platforms/android-28
"Install Android SDK Platform 28 (revision: 4)" complete.
"Install Android SDK Platform 28 (revision: 4)" finished.
:clean UP-TO-DATE
:app:clean
:app:checkDebugClasspath
:app:preBuild UP-TO-DATE
:app:preDebugBuild
:app:compileDebugAidl NO-SOURCE
:app:compileDebugRenderscript
:app:checkDebugManifest
:app:generateDebugBuildConfig
:app:generateSafeArgsDebug
:app:prepareLintJar
:app:mainApkListPersistenceDebug
:app:generateDebugResValues
:app:generateDebugResources
:app:mergeDebugResourcesAAPT2 aapt2-3.2.0-beta03-4818971-linux Daemon #2: Unexpected error output: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: 19: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: Syntax error: word unexpected (expecting ")")
AAPT2 aapt2-3.2.0-beta03-4818971-linux Daemon #0: Unexpected error output: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: 19: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: Syntax error: word unexpected (expecting ")")
AAPT2 aapt2-3.2.0-beta03-4818971-linux Daemon #1: Unexpected error output: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: 19: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: Syntax error: word unexpected (expecting ")")
AAPT2 aapt2-3.2.0-beta03-4818971-linux Daemon #4: Unexpected error output: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: 19: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: Syntax error: word unexpected (expecting ")")
AAPT2 aapt2-3.2.0-beta03-4818971-linux Daemon #3: Unexpected error output: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: 19: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: Syntax error: word unexpected (expecting ")")
AAPT2 aapt2-3.2.0-beta03-4818971-linux Daemon #5: Unexpected error output: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: 19: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: Syntax error: word unexpected (expecting ")")
AAPT2 aapt2-3.2.0-beta03-4818971-linux Daemon #7: Unexpected error output: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: 19: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: Syntax error: word unexpected (expecting ")")
AAPT2 aapt2-3.2.0-beta03-4818971-linux Daemon #6: Unexpected error output: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: 19: /var/lib/jenkins/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-beta03-4818971-linux.jar/af6f6047a6877ad6fb27278423eb186d/aapt2-3.2.0-beta03-4818971-linux/aapt2: Syntax error: word unexpected (expecting ")")
 FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:mergeDebugResources'.
> java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2InternalException: AAPT2 aapt2-3.2.0-beta03-4818971-linux Daemon #2: Daemon startup failed
  This should not happen under normal circumstances, please file an issue if it does.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 3m 27s
12 actionable tasks: 11 executed, 1 up-to-date
Build step 'Invoke Gradle script' changed build result to FAILURE
Build step 'Invoke Gradle script' marked build as failure

I'm really not sure why I'm getting these results, especially as both of the projects build just fine on my local Windows machine. Perhaps I'm missing something I should have installed on the Jenkins machine? I'm hoping there's an answer other than disabling aapt2 in gradle.properties as it doesn't really find the problem here.

Programmer001
  • 2,240
  • 2
  • 19
  • 35
  • Do they run without error on local? – Kruti Parekh Jul 17 '18 at 03:22
  • 1
    Yes I can get them to build and run in an emulator without problem on local – Programmer001 Jul 17 '18 at 04:33
  • Is your Jenkins server a 32 bit machine? https://stackoverflow.com/questions/38663495/android-studio-2-1-2-gradle-aapt-syntax-error-unterminated-quoted-string – Alexander Egger Jul 17 '18 at 05:32
  • Exactly what Alexander said - is your machine a 32 bit linux? Android Studio/android gradle plugin does not support 32 bit linux (only 64b) – Izabela Orlowska Jul 17 '18 at 11:56
  • You know what, that's most likely the problem. It's a 32 bit machine. So much for putting to use something laying around haha. – Programmer001 Jul 17 '18 at 13:37
  • @Programmer001Did you get the solution? I'm having the same issue, getting this error on the Jenkins. – Rohan Oct 08 '18 at 17:05
  • 1
    @Rohan I believe it was because I was using a 32bit machine. I set everything up again on a 64bit machine and had no issues. – Programmer001 Oct 09 '18 at 04:55
  • @Programmer001Yea, I had the Jenkins guy fix the issue, the issue is not on the app side, its on the Jenkins side, if your app is building and compiling on Android Studio successfully. – Rohan Oct 11 '18 at 14:15
  • @Programmer001 how did you solve the issue?? – MHSaffari Jul 03 '19 at 06:31
  • @MHSFisher The issue was the machine I was building on was a 32bit machine. I scrapped the machine for this use-case and put it on a 64-bit machine and then it worked. – Programmer001 Jul 03 '19 at 19:07

0 Answers0