
> echo Attempting build for nazimboudeffa-barcode-scanner-cordova-app with Node 20 and JDK 8
Attempting build for nazimboudeffa-barcode-scanner-cordova-app with Node 20 and JDK 8

> docker run --rm -v /home/ubuntu/storage/cordova_assets/extracted/nazimboudeffa-barcode-scanner-cordova-app/barcode-scanner-cordova-app-8ea1390f77b9563d24e44bb0bcdb00b0196603ef:/source:ro -v /home/ubuntu/BachelorsThesis/scripts/cordova/output/nazimboudeffa-barcode-scanner-cordova-app:/output -v /home/ubuntu/.npm:/root/.npm cordova-android:20-jdk8 bash -c set -e
            cp -r /source/. /app
            cd /app
            rm -rf platforms plugins node_modules || true
            rm -rf $GRADLE_USER_HOME || true
            mkdir -p $GRADLE_USER_HOME

            # unset Gradle options
            unset JAVA_OPTS

            # install deps
            if [ -f yarn.lock ]; then
                yarn install --ignore-scripts
            else
                npm install --ignore-scripts
            fi

            # ensure android platform
            cordova platform add android
            cordova prepare android

            # ---- PATCH ROOT GRADLE FILES (CRITICAL FIX) ----
            for f in platforms/android/build.gradle platforms/android/CordovaLib/build.gradle; do
                if [ -f "$f" ]; then
                    # add missing repositories to buildscript + allprojects
                    sed -i '/buildscript[[:space:]]*{/a\
                repositories {\
                    google()\
                    mavenCentral()\
                    maven { url "https://plugins.gradle.org/m2/" }\
                    maven { url "https://maven.aliyun.com/repository/public" }\
                    maven { url "https://jcenter.bintray.com/" }\
                    maven { url "https://jitpack.io" }\
                }\
            ' "$f" || true

                    sed -i '/allprojects[[:space:]]*{/a\
                repositories {\
                    google()\
                    mavenCentral()\
                    maven { url "https://plugins.gradle.org/m2/" }\
                    maven { url "https://maven.aliyun.com/repository/public" }\
                    maven { url "https://jcenter.bintray.com/" }\
                    maven { url "https://jitpack.io" }\
                }\
            ' "$f" || true
                fi
            done

            # ---- FIX versioncompare (very common failure) ----
            grep -RIl 'com.g00fy2:versioncompare:1.3.4' platforms/android 2>/dev/null | \
            xargs -r sed -i 's/com.g00fy2:versioncompare:1.3.4/io.github.g00fy2:versioncompare:1.5.0/g' || true

            # ---- fix versioncompare imports (CRITICAL) ----
            find platforms/android \( -name "*.gradle" -o -name "*.gradle.kts" \) -print0 | \
            xargs -0 sed -i 's/import com\.g00fy2\.versioncompare\.Version/import io.github.g00fy2.versioncompare.Version/g' || true

            # ---- OPTIONAL: remove illegal JVM args ----
            find platforms/android -type f -exec sed -i 's/--illegal-access=permit//g' {} + || true

            # ---- JDK 8 specific patch (minimal, no overwrite!) ----
            if [ \"8\" = "8" ]; then
                # ensure older sdk usage (do NOT overwrite build.gradle anymore)
                find platforms/android -name "build.gradle" -exec \
                    sed -i 's/compileSdkVersion [0-9]\+/compileSdkVersion 30/g' {} \; || true

                find platforms/android -name "build.gradle" -exec \
                    sed -i 's/targetSdkVersion [0-9]\+/targetSdkVersion 30/g' {} \; || true
            fi

            # ---- android sdk path ----
            echo "sdk.dir=$ANDROID_HOME" > platforms/android/local.properties

            # ---- force APK output (suppress AAB generation) ----
            echo "android.bundle.enableAll=false" >> platforms/android/gradle.properties

            # ---- enable ABI splits ----
            if grep -q 'splits' platforms/android/app/build.gradle 2>/dev/null; then
                sed -i 's/enable false/enable true/' platforms/android/app/build.gradle || true
            else
                sed -i '/^android[[:space:]]*{/a\    splits {\n        abi {\n            reset()\n            enable true\n            universalApk false\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\n        }\n    }' platforms/android/app/build.gradle || true
            fi

            # ---- build debug APK ----
            cordova build android --debug --no-interactive --verbose

            cp platforms/android/app/build/outputs/apk/debug/*.apk /output/

            # ---- copy TPL metadata ----
            [ -f config.xml ] && cp config.xml /output/ || true
            [ -f plugins/fetch.json ] && cp plugins/fetch.json /output/ || true
            [ -f plugins/android.json ] && cp plugins/android.json /output/ || true
            [ -f platforms/android/app/build.gradle ] && cp platforms/android/app/build.gradle /output/app-build.gradle || true
            [ -f platforms/android/build.gradle ] && cp platforms/android/build.gradle /output/root-build.gradle || true
            [ -f platforms/android/settings.gradle ] && cp platforms/android/settings.gradle /output/ || true
            [ -f package.json ] && cp package.json /output/ || true
            [ -f package-lock.json ] && cp package-lock.json /output/ || true
            [ -f yarn.lock ] && cp yarn.lock /output/ || true
            [ -f pnpm-lock.yaml ] && cp pnpm-lock.yaml /output/ || true
            mkdir -p /output/plugin_manifests
            find plugins -name "plugin.xml" 2>/dev/null | while read f; do cp "$f" /output/plugin_manifests/$(echo "$f" | tr '/' '_') 2>/dev/null; done || true
            find plugins -name "*.gradle" 2>/dev/null | while read f; do cp "$f" /output/ 2>/dev/null; done || true
            find platforms/android -name "*.gradle" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/ 2>/dev/null; done || true
            mkdir -p /output/libs
            find plugins platforms/android -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
            find plugins platforms/android -name "*.aar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
            find plugins platforms/android -name "*.so" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
            
npm warn old lockfile
npm warn old lockfile The package-lock.json file was created with an old version of npm,
npm warn old lockfile so supplemental metadata must be fetched from the registry.
npm warn old lockfile
npm warn old lockfile This is a one-time fix-up, please be patient...
npm warn old lockfile
npm warn deprecated cordova-plugin-whitelist@1.3.3: See https://github.com/apache/cordova-plugin-whitelist#deprecation-notice for details.
npm warn deprecated phonegap-plugin-barcodescanner@8.0.0: This package is deprecated, see https://blog.phonegap.com/update-for-customers-using-phonegap-and-phonegap-build-cc701c77502c

added 3 packages, and audited 34 packages in 2s

9 vulnerabilities (4 high, 5 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.
Using cordova-fetch for cordova-android@^7.1.1
Adding android project...
Creating Cordova project for the Android platform:
	Path: platforms/android
	Package: biz.aldaffah.scanner
	Name: QR_Code_Scanner
	Activity: MainActivity
	Android target: android-27
Android project created with cordova-android@7.1.1
Android Studio project detected
Android Studio project detected
Discovered plugin "cordova-plugin-whitelist". Adding it to the project
Installing "cordova-plugin-whitelist" for android

               This plugin is only applicable for versions of cordova-android greater than 4.0. If you have a previous platform version, you do *not* need this plugin since the whitelist will be built in.
          
Adding cordova-plugin-whitelist to package.json
Discovered plugin "phonegap-plugin-barcodescanner". Adding it to the project
Installing "phonegap-plugin-barcodescanner" for android
Subproject Path: CordovaLib
Subproject Path: app
Adding phonegap-plugin-barcodescanner to package.json
Android Studio project detected
No scripts found for hook "before_build".
No scripts found for hook "before_prepare".
Checking for saved platforms that haven't been added to the project
Loaded API for android project /app/platforms/android/cordova/Api.js
Android Studio project detected
Checking for saved plugins that haven't been added to the project
Generating platform-specific config.xml from defaults for android at /app/platforms/android/app/src/main/res/xml/config.xml
Merging project's config.xml into platform-specific android config.xml
Merging and updating files from [www, platforms/android/platform_www] to platforms/android/app/src/main/assets/www
  copy  platforms/android/platform_www/cordova-js-src/android/nativeapiprovider.js platforms/android/app/src/main/assets/www/cordova-js-src/android/nativeapiprovider.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/android/promptbasednativeapi.js platforms/android/app/src/main/assets/www/cordova-js-src/android/promptbasednativeapi.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/exec.js platforms/android/app/src/main/assets/www/cordova-js-src/exec.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/platform.js platforms/android/app/src/main/assets/www/cordova-js-src/platform.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/plugin/android/app.js platforms/android/app/src/main/assets/www/cordova-js-src/plugin/android/app.js (updated file)
  copy  platforms/android/platform_www/cordova.js platforms/android/app/src/main/assets/www/cordova.js (updated file)
  copy  platforms/android/platform_www/cordova_plugins.js platforms/android/app/src/main/assets/www/cordova_plugins.js (updated file)
  copy  platforms/android/platform_www/plugins/phonegap-plugin-barcodescanner/www/barcodescanner.js platforms/android/app/src/main/assets/www/plugins/phonegap-plugin-barcodescanner/www/barcodescanner.js (updated file)
Wrote out android application name "QR Code Scanner" to /app/platforms/android/app/src/main/res/values/strings.xml
android-versionCode not found in config.xml. Generating a code based on version in config.xml (1.0.3): 10003
Wrote out Android package name "biz.aldaffah.scanner" to /app/platforms/android/app/src/main/java/biz/aldaffah/scanner/MainActivity.java
This app does not have launcher icons defined
This app does not have splash screens defined
This app does not have additional resource files defined
Prepared android project successfully
No scripts found for hook "after_prepare".
No scripts found for hook "before_compile".
ANDROID_HOME=/opt/android
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
studio
Running command: /root/.sdkman/candidates/gradle/6.5/bin/gradle -p /app/platforms/android wrapper -b /app/platforms/android/wrapper.gradle

Welcome to Gradle 6.5!

Here are the highlights of this release:
 - Experimental file-system watching
 - Improved version ordering
 - New samples

For more details see https://docs.gradle.org/6.5/release-notes.html

> Task :wrapper

BUILD SUCCESSFUL in 5s
1 actionable task: 1 executed
Command finished with error code 0: /root/.sdkman/candidates/gradle/6.5/bin/gradle -p,/app/platforms/android,wrapper,-b,/app/platforms/android/wrapper.gradle
Subproject Path: CordovaLib
Subproject Path: app
Running command: /app/platforms/android/gradlew cdvBuildDebug -b /app/platforms/android/build.gradle -Dorg.gradle.daemon=true -Dorg.gradle.jvmargs=-Xmx2048m
Downloading https://services.gradle.org/distributions/gradle-4.1-all.zip
........10%.........20%........30%.........40%........50%.........60%.........70%........80%.........90%........100%
Starting a Gradle Daemon (subsequent builds will be faster)
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.0.1/gradle-3.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle-core/3.0.1/gradle-core-3.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/builder/3.0.1/builder-3.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/external/org-jetbrains/uast/26.0.1/uast-26.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/transform-api/2.0.0-deprecated-use-gradle-api/transform-api-2.0.0-deprecated-use-gradle-api.pom
Download https://dl.google.com/dl/android/maven2/com/android/databinding/compilerCommon/3.0.1/compilerCommon-3.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint/26.0.1/lint-26.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle-api/3.0.1/gradle-api-3.0.1.pom
Download https://repo1.maven.org/maven2/org/ow2/asm/asm-commons/5.1/asm-commons-5.1.pom
Download https://repo1.maven.org/maven2/org/ow2/asm/asm/5.1/asm-5.1.pom
Download https://repo1.maven.org/maven2/org/ow2/asm/asm-util/5.1/asm-util-5.1.pom
Download https://repo1.maven.org/maven2/net/sf/proguard/proguard-gradle/5.3.3/proguard-gradle-5.3.3.pom
Download https://repo1.maven.org/maven2/net/sf/jopt-simple/jopt-simple/4.9/jopt-simple-4.9.pom
Download https://repo1.maven.org/maven2/org/ow2/asm/asm-analysis/5.1/asm-analysis-5.1.pom
Download https://repo1.maven.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.1.3-2/kotlin-stdlib-1.1.3-2.pom
Download https://repo1.maven.org/maven2/org/jacoco/org.jacoco.core/0.7.4.201502262128/org.jacoco.core-0.7.4.201502262128.pom
Download https://repo1.maven.org/maven2/org/jacoco/org.jacoco.report/0.7.4.201502262128/org.jacoco.report-0.7.4.201502262128.pom
Download https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java/3.0.0/protobuf-java-3.0.0.pom
Download https://repo1.maven.org/maven2/org/ow2/asm/asm-parent/5.1/asm-parent-5.1.pom
Download https://repo1.maven.org/maven2/net/sf/proguard/proguard-parent/5.3.3/proguard-parent-5.3.3.pom
Download https://repo1.maven.org/maven2/org/sonatype/oss/oss-parent/7/oss-parent-7.pom
Download https://repo1.maven.org/maven2/org/jacoco/org.jacoco.build/0.7.4.201502262128/org.jacoco.build-0.7.4.201502262128.pom
Download https://repo1.maven.org/maven2/com/google/protobuf/protobuf-parent/3.0.0/protobuf-parent-3.0.0.pom
Download https://repo1.maven.org/maven2/org/ow2/ow2/1.3/ow2-1.3.pom
Download https://repo1.maven.org/maven2/com/google/google/1/google-1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/ddms/ddmlib/26.0.1/ddmlib-26.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library/tracker/26.0.1/tracker-26.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library/shared/26.0.1/shared-26.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-test-api/3.0.1/builder-test-api-3.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/common/26.0.1/common-26.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/sdklib/26.0.1/sdklib-26.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library/protos/26.0.1/protos-26.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/sdk-common/26.0.1/sdk-common-26.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-model/3.0.1/builder-model-3.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/apksig/3.0.1/apksig-3.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/manifest-merger/26.0.1/manifest-merger-26.0.1.pom
Download https://repo1.maven.org/maven2/com/squareup/javawriter/2.5.0/javawriter-2.5.0.pom
Download https://repo1.maven.org/maven2/org/ow2/asm/asm-tree/5.1/asm-tree-5.1.pom
Download https://repo1.maven.org/maven2/com/googlecode/json-simple/json-simple/1.1/json-simple-1.1.pom
Download https://repo1.maven.org/maven2/org/bouncycastle/bcpkix-jdk15on/1.56/bcpkix-jdk15on-1.56.pom
Download https://repo1.maven.org/maven2/org/bouncycastle/bcprov-jdk15on/1.56/bcprov-jdk15on-1.56.pom
Download https://repo1.maven.org/maven2/it/unimi/dsi/fastutil/7.2.0/fastutil-7.2.0.pom
Download https://repo1.maven.org/maven2/org/eclipse/jdt/core/compiler/ecj/4.6.1/ecj-4.6.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-checks/26.0.1/lint-checks-26.0.1.pom
Download https://repo1.maven.org/maven2/com/google/guava/guava/22.0/guava-22.0.pom
Download https://repo1.maven.org/maven2/com/google/guava/guava-parent/22.0/guava-parent-22.0.pom
Download https://repo1.maven.org/maven2/com/android/tools/annotations/24.5.0/annotations-24.5.0.pom
Download https://repo1.maven.org/maven2/commons-io/commons-io/2.4/commons-io-2.4.pom
Download https://repo1.maven.org/maven2/com/googlecode/juniversalchardet/juniversalchardet/1.0.3/juniversalchardet-1.0.3.pom
Download https://dl.google.com/dl/android/maven2/com/android/databinding/baseLibrary/3.0.1/baseLibrary-3.0.1.pom
Download https://repo1.maven.org/maven2/org/apache/commons/commons-parent/25/commons-parent-25.pom
Download https://repo1.maven.org/maven2/org/antlr/antlr4/4.5.3/antlr4-4.5.3.pom
Download https://repo1.maven.org/maven2/org/antlr/antlr4-master/4.5.3/antlr4-master-4.5.3.pom
Download https://repo1.maven.org/maven2/org/apache/apache/9/apache-9.pom
Download https://repo1.maven.org/maven2/org/sonatype/oss/oss-parent/9/oss-parent-9.pom
Download https://repo1.maven.org/maven2/org/jetbrains/annotations/13.0/annotations-13.0.pom
Download https://repo1.maven.org/maven2/net/sf/proguard/proguard-base/5.3.3/proguard-base-5.3.3.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/layoutlib/layoutlib-api/26.0.1/layoutlib-api-26.0.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/repository/26.0.1/repository-26.0.1.pom
Download https://repo1.maven.org/maven2/com/google/code/gson/gson/2.3/gson-2.3.pom
Download https://repo1.maven.org/maven2/org/apache/commons/commons-compress/1.12/commons-compress-1.12.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/dvlib/26.0.1/dvlib-26.0.1.pom
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/httpmime/4.1/httpmime-4.1.pom
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/httpclient/4.2.6/httpclient-4.2.6.pom
Download https://repo1.maven.org/maven2/org/apache/commons/commons-parent/39/commons-parent-39.pom
Download https://repo1.maven.org/maven2/org/apache/apache/16/apache-16.pom
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/httpcomponents-client/4.2.6/httpcomponents-client-4.2.6.pom
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/httpcomponents-client/4.1/httpcomponents-client-4.1.pom
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/project/4.1.1/project-4.1.1.pom
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/project/7/project-7.pom
Download https://repo1.maven.org/maven2/org/apache/apache/13/apache-13.pom
Download https://repo1.maven.org/maven2/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-api/26.0.1/lint-api-26.0.1.pom
Download https://repo1.maven.org/maven2/org/codehaus/mojo/animal-sniffer-annotations/1.14/animal-sniffer-annotations-1.14.pom
Download https://repo1.maven.org/maven2/com/google/j2objc/j2objc-annotations/1.1/j2objc-annotations-1.1.pom
Download https://repo1.maven.org/maven2/com/google/code/findbugs/jsr305/1.3.9/jsr305-1.3.9.pom
Download https://repo1.maven.org/maven2/com/google/errorprone/error_prone_annotations/2.0.18/error_prone_annotations-2.0.18.pom
Download https://repo1.maven.org/maven2/org/codehaus/mojo/animal-sniffer-parent/1.14/animal-sniffer-parent-1.14.pom
Download https://repo1.maven.org/maven2/com/google/errorprone/error_prone_parent/2.0.18/error_prone_parent-2.0.18.pom
Download https://repo1.maven.org/maven2/org/codehaus/mojo/mojo-parent/34/mojo-parent-34.pom
Download https://repo1.maven.org/maven2/org/codehaus/codehaus-parent/4/codehaus-parent-4.pom
Download https://repo1.maven.org/maven2/com/intellij/annotations/12.0/annotations-12.0.pom
Download https://repo1.maven.org/maven2/com/google/jimfs/jimfs/1.1/jimfs-1.1.pom
Download https://repo1.maven.org/maven2/com/google/jimfs/jimfs-parent/1.1/jimfs-parent-1.1.pom
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/httpcore/4.2.5/httpcore-4.2.5.pom
Download https://repo1.maven.org/maven2/commons-codec/commons-codec/1.6/commons-codec-1.6.pom
Download https://repo1.maven.org/maven2/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.pom
Download https://repo1.maven.org/maven2/org/apache/commons/commons-parent/22/commons-parent-22.pom
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/httpcomponents-core/4.2.5/httpcomponents-core-4.2.5.pom
Download https://repo1.maven.org/maven2/org/apache/commons/commons-parent/5/commons-parent-5.pom
Download https://repo1.maven.org/maven2/org/apache/apache/4/apache-4.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/external/com-intellij/intellij-core/26.0.1/intellij-core-26.0.1.pom
Download https://repo1.maven.org/maven2/com/android/tools/external/lombok/lombok-ast/0.2.3/lombok-ast-0.2.3.pom
Download https://repo1.maven.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.1.3-2/kotlin-reflect-1.1.3-2.pom
Download https://repo1.maven.org/maven2/org/jetbrains/trove4j/trove4j/20160824/trove4j-20160824.pom
Download https://dl.google.com/dl/android/maven2/com/android/tools/annotations/26.0.1/annotations-26.0.1.pom
Download https://repo1.maven.org/maven2/org/jetbrains/kotlin/kotlin-reflect/1.1.3-2/kotlin-reflect-1.1.3-2.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.0.1/gradle-3.0.1.jar
Download https://repo1.maven.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.1.3-2/kotlin-stdlib-1.1.3-2.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-checks/26.0.1/lint-checks-26.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle-api/3.0.1/gradle-api-3.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle-core/3.0.1/gradle-core-3.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/builder/3.0.1/builder-3.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/sdk-common/26.0.1/sdk-common-26.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint/26.0.1/lint-26.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/lint/lint-api/26.0.1/lint-api-26.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/sdklib/26.0.1/sdklib-26.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/manifest-merger/26.0.1/manifest-merger-26.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/databinding/compilerCommon/3.0.1/compilerCommon-3.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/transform-api/2.0.0-deprecated-use-gradle-api/transform-api-2.0.0-deprecated-use-gradle-api.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/external/org-jetbrains/uast/26.0.1/uast-26.0.1.jar
Download https://repo1.maven.org/maven2/org/ow2/asm/asm-analysis/5.1/asm-analysis-5.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/repository/26.0.1/repository-26.0.1.jar
Download https://repo1.maven.org/maven2/org/ow2/asm/asm-commons/5.1/asm-commons-5.1.jar
Download https://repo1.maven.org/maven2/org/ow2/asm/asm-util/5.1/asm-util-5.1.jar
Download https://repo1.maven.org/maven2/org/ow2/asm/asm-tree/5.1/asm-tree-5.1.jar
Download https://repo1.maven.org/maven2/org/jacoco/org.jacoco.core/0.7.4.201502262128/org.jacoco.core-0.7.4.201502262128.jar
Download https://repo1.maven.org/maven2/org/ow2/asm/asm/5.1/asm-5.1.jar
Download https://repo1.maven.org/maven2/net/sf/proguard/proguard-gradle/5.3.3/proguard-gradle-5.3.3.jar
Download https://repo1.maven.org/maven2/org/jacoco/org.jacoco.report/0.7.4.201502262128/org.jacoco.report-0.7.4.201502262128.jar
Download https://repo1.maven.org/maven2/net/sf/jopt-simple/jopt-simple/4.9/jopt-simple-4.9.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library/tracker/26.0.1/tracker-26.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/layoutlib/layoutlib-api/26.0.1/layoutlib-api-26.0.1.jar
Download https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java/3.0.0/protobuf-java-3.0.0.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/dvlib/26.0.1/dvlib-26.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-test-api/3.0.1/builder-test-api-3.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library/protos/26.0.1/protos-26.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/common/26.0.1/common-26.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/ddms/ddmlib/26.0.1/ddmlib-26.0.1.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/builder-model/3.0.1/builder-model-3.0.1.jar
Download https://repo1.maven.org/maven2/com/squareup/javawriter/2.5.0/javawriter-2.5.0.jar
Download https://repo1.maven.org/maven2/org/bouncycastle/bcpkix-jdk15on/1.56/bcpkix-jdk15on-1.56.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/build/apksig/3.0.1/apksig-3.0.1.jar
Download https://repo1.maven.org/maven2/com/googlecode/json-simple/json-simple/1.1/json-simple-1.1.jar
Download https://repo1.maven.org/maven2/it/unimi/dsi/fastutil/7.2.0/fastutil-7.2.0.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/analytics-library/shared/26.0.1/shared-26.0.1.jar
Download https://repo1.maven.org/maven2/org/bouncycastle/bcprov-jdk15on/1.56/bcprov-jdk15on-1.56.jar
Download https://repo1.maven.org/maven2/org/eclipse/jdt/core/compiler/ecj/4.6.1/ecj-4.6.1.jar
Download https://repo1.maven.org/maven2/com/google/guava/guava/22.0/guava-22.0.jar
Download https://repo1.maven.org/maven2/com/google/jimfs/jimfs/1.1/jimfs-1.1.jar
Download https://repo1.maven.org/maven2/com/android/tools/external/lombok/lombok-ast/0.2.3/lombok-ast-0.2.3.jar
Download https://repo1.maven.org/maven2/org/antlr/antlr4/4.5.3/antlr4-4.5.3.jar
Download https://repo1.maven.org/maven2/commons-io/commons-io/2.4/commons-io-2.4.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/annotations/26.0.1/annotations-26.0.1.jar
Download https://repo1.maven.org/maven2/org/apache/commons/commons-compress/1.12/commons-compress-1.12.jar
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/httpclient/4.2.6/httpclient-4.2.6.jar
Download https://dl.google.com/dl/android/maven2/com/android/databinding/baseLibrary/3.0.1/baseLibrary-3.0.1.jar
Download https://repo1.maven.org/maven2/com/googlecode/juniversalchardet/juniversalchardet/1.0.3/juniversalchardet-1.0.3.jar
Download https://repo1.maven.org/maven2/com/google/code/gson/gson/2.3/gson-2.3.jar
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/httpmime/4.1/httpmime-4.1.jar
Download https://repo1.maven.org/maven2/net/sf/proguard/proguard-base/5.3.3/proguard-base-5.3.3.jar
Download https://repo1.maven.org/maven2/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0.jar
Download https://repo1.maven.org/maven2/org/jetbrains/annotations/13.0/annotations-13.0.jar
Download https://repo1.maven.org/maven2/com/google/errorprone/error_prone_annotations/2.0.18/error_prone_annotations-2.0.18.jar
Download https://repo1.maven.org/maven2/com/intellij/annotations/12.0/annotations-12.0.jar
Download https://repo1.maven.org/maven2/org/codehaus/mojo/animal-sniffer-annotations/1.14/animal-sniffer-annotations-1.14.jar
Download https://repo1.maven.org/maven2/com/google/j2objc/j2objc-annotations/1.1/j2objc-annotations-1.1.jar
Download https://repo1.maven.org/maven2/com/google/code/findbugs/jsr305/1.3.9/jsr305-1.3.9.jar
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/httpcore/4.2.5/httpcore-4.2.5.jar
Download https://repo1.maven.org/maven2/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar
Download https://repo1.maven.org/maven2/commons-codec/commons-codec/1.6/commons-codec-1.6.jar
Download https://repo1.maven.org/maven2/org/jetbrains/trove4j/trove4j/20160824/trove4j-20160824.jar
Download https://dl.google.com/dl/android/maven2/com/android/tools/external/com-intellij/intellij-core/26.0.1/intellij-core-26.0.1.jar
Download https://repo1.maven.org/maven2/com/github/dcendents/android-maven-gradle-plugin/1.5/android-maven-gradle-plugin-1.5.pom
Download https://plugins.gradle.org/m2/com/jfrog/bintray/gradle/gradle-bintray-plugin/1.7.3/gradle-bintray-plugin-1.7.3.pom
Download https://repo1.maven.org/maven2/org/apache/maven/maven-ant-tasks/2.1.3/maven-ant-tasks-2.1.3.pom
Download https://maven.aliyun.com/repository/public/org/codehaus/groovy/modules/http-builder/http-builder/0.7.2/http-builder-0.7.2.pom
Download https://repo1.maven.org/maven2/org/apache/maven/maven-parent/19/maven-parent-19.pom
Download https://repo1.maven.org/maven2/net/sourceforge/nekohtml/nekohtml/1.9.16/nekohtml-1.9.16.pom
Download https://repo1.maven.org/maven2/net/sf/json-lib/json-lib/2.3/json-lib-2.3.pom
Download https://repo1.maven.org/maven2/xml-resolver/xml-resolver/1.2/xml-resolver-1.2.pom
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/httpclient/4.2.1/httpclient-4.2.1.pom
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/httpcomponents-client/4.2.1/httpcomponents-client-4.2.1.pom
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/project/6/project-6.pom
Download https://repo1.maven.org/maven2/org/apache/apache/3/apache-3.pom
Download https://repo1.maven.org/maven2/classworlds/classworlds/1.1-alpha-2/classworlds-1.1-alpha-2.pom
Download https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-interpolation/1.11/plexus-interpolation-1.11.pom
Download https://repo1.maven.org/maven2/org/apache/maven/maven-model/2.2.1/maven-model-2.2.1.pom
Download https://repo1.maven.org/maven2/org/apache/maven/maven-artifact-manager/2.2.1/maven-artifact-manager-2.2.1.pom
Download https://repo1.maven.org/maven2/org/apache/maven/wagon/wagon-provider-api/1.0-beta-6/wagon-provider-api-1.0-beta-6.pom
Download https://repo1.maven.org/maven2/org/apache/maven/maven-error-diagnostics/2.2.1/maven-error-diagnostics-2.2.1.pom
Download https://repo1.maven.org/maven2/org/apache/maven/wagon/wagon-http-lightweight/1.0-beta-6/wagon-http-lightweight-1.0-beta-6.pom
Download https://repo1.maven.org/maven2/org/apache/maven/maven-project/2.2.1/maven-project-2.2.1.pom
Download https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-container-default/1.0-alpha-9-stable-1/plexus-container-default-1.0-alpha-9-stable-1.pom
Download https://repo1.maven.org/maven2/org/apache/ant/ant/1.8.0/ant-1.8.0.pom
Download https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-utils/1.5.15/plexus-utils-1.5.15.pom
Download https://repo1.maven.org/maven2/org/apache/maven/wagon/wagon-file/1.0-beta-6/wagon-file-1.0-beta-6.pom
Download https://repo1.maven.org/maven2/org/apache/maven/maven-settings/2.2.1/maven-settings-2.2.1.pom
Download https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-components/1.1.14/plexus-components-1.1.14.pom
Download https://repo1.maven.org/maven2/org/apache/maven/maven-artifact/2.2.1/maven-artifact-2.2.1.pom
Download https://repo1.maven.org/maven2/org/apache/maven/wagon/wagon/1.0-beta-6/wagon-1.0-beta-6.pom
Download https://repo1.maven.org/maven2/org/apache/maven/maven/2.2.1/maven-2.2.1.pom
Download https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-containers/1.0.3/plexus-containers-1.0.3.pom
Download https://repo1.maven.org/maven2/org/codehaus/plexus/plexus/2.0.2/plexus-2.0.2.pom
Download https://repo1.maven.org/maven2/org/apache/maven/maven-parent/11/maven-parent-11.pom
Download https://repo1.maven.org/maven2/org/codehaus/plexus/plexus/1.0.4/plexus-1.0.4.pom
Download https://repo1.maven.org/maven2/org/apache/apache/5/apache-5.pom
Download https://repo1.maven.org/maven2/org/apache/ant/ant-parent/1.8.0/ant-parent-1.8.0.pom
Download https://repo1.maven.org/maven2/org/apache/maven/wagon/wagon-providers/1.0-beta-6/wagon-providers-1.0-beta-6.pom
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/httpcore/4.2.1/httpcore-4.2.1.pom
Download https://repo1.maven.org/maven2/org/apache/httpcomponents/httpcomponents-core/4.2.1/httpcomponents-core-4.2.1.pom
Download https://repo1.maven.org/maven2/net/sf/ezmorph/ezmorph/1.0.6/ezmorph-1.0.6.pom
Download https://repo1.maven.org/maven2/commons-beanutils/commons-beanutils/1.8.0/commons-beanutils-1.8.0.pom
Download https://repo1.maven.org/maven2/commons-lang/commons-lang/2.4/commons-lang-2.4.pom
Download https://repo1.maven.org/maven2/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.pom
Download https://repo1.maven.org/maven2/org/apache/commons/commons-parent/9/commons-parent-9.pom
Download https://repo1.maven.org/maven2/org/apache/commons/commons-parent/11/commons-parent-11.pom
Download https://repo1.maven.org/maven2/xerces/xercesImpl/2.9.1/xercesImpl-2.9.1.pom
Download https://repo1.maven.org/maven2/org/apache/ant/ant-launcher/1.8.0/ant-launcher-1.8.0.pom
Download https://repo1.maven.org/maven2/org/apache/maven/maven-repository-metadata/2.2.1/maven-repository-metadata-2.2.1.pom
Download https://repo1.maven.org/maven2/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.pom
Download https://repo1.maven.org/maven2/org/apache/maven/maven-plugin-registry/2.2.1/maven-plugin-registry-2.2.1.pom
Download https://repo1.maven.org/maven2/org/apache/maven/maven-profile/2.2.1/maven-profile-2.2.1.pom
Download https://repo1.maven.org/maven2/org/apache/maven/wagon/wagon-http-shared/1.0-beta-6/wagon-http-shared-1.0-beta-6.pom
Download https://repo1.maven.org/maven2/xml-apis/xml-apis/1.3.04/xml-apis-1.3.04.pom
Download https://repo1.maven.org/maven2/junit/junit/3.8.1/junit-3.8.1.pom
Download https://repo1.maven.org/maven2/nekohtml/nekohtml/1.9.6.2/nekohtml-1.9.6.2.pom
Download https://repo1.maven.org/maven2/nekohtml/xercesMinimal/1.9.6.2/xercesMinimal-1.9.6.2.pom
Download https://repo1.maven.org/maven2/com/github/dcendents/android-maven-gradle-plugin/1.5/android-maven-gradle-plugin-1.5.jar
Download https://maven.aliyun.com/repository/public/org/codehaus/groovy/modules/http-builder/http-builder/0.7.2/http-builder-0.7.2.jar
Download https://repo1.maven.org/maven2/net/sf/json-lib/json-lib/2.3/json-lib-2.3-jdk15.jar
Download https://repo1.maven.org/maven2/net/sourceforge/nekohtml/nekohtml/1.9.16/nekohtml-1.9.16.jar
Download https://repo1.maven.org/maven2/org/apache/ant/ant/1.8.0/ant-1.8.0.jar
Download https://repo1.maven.org/maven2/org/apache/maven/maven-settings/2.2.1/maven-settings-2.2.1.jar
Download https://repo1.maven.org/maven2/xml-resolver/xml-resolver/1.2/xml-resolver-1.2.jar
Download https://repo1.maven.org/maven2/org/apache/maven/maven-artifact-manager/2.2.1/maven-artifact-manager-2.2.1.jar
Download https://repo1.maven.org/maven2/org/apache/maven/maven-project/2.2.1/maven-project-2.2.1.jar
Download https://repo1.maven.org/maven2/org/apache/maven/maven-ant-tasks/2.1.3/maven-ant-tasks-2.1.3.jar
Download https://repo1.maven.org/maven2/org/apache/maven/maven-profile/2.2.1/maven-profile-2.2.1.jar
Download https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-container-default/1.0-alpha-9-stable-1/plexus-container-default-1.0-alpha-9-stable-1.jar
Download https://repo1.maven.org/maven2/classworlds/classworlds/1.1-alpha-2/classworlds-1.1-alpha-2.jar
Download https://repo1.maven.org/maven2/org/apache/maven/maven-error-diagnostics/2.2.1/maven-error-diagnostics-2.2.1.jar
Download https://plugins.gradle.org/m2/com/jfrog/bintray/gradle/gradle-bintray-plugin/1.7.3/gradle-bintray-plugin-1.7.3.jar
Download https://repo1.maven.org/maven2/org/apache/maven/maven-plugin-registry/2.2.1/maven-plugin-registry-2.2.1.jar
Download https://repo1.maven.org/maven2/org/apache/maven/wagon/wagon-http-shared/1.0-beta-6/wagon-http-shared-1.0-beta-6.jar
Download https://repo1.maven.org/maven2/org/apache/maven/wagon/wagon-http-lightweight/1.0-beta-6/wagon-http-lightweight-1.0-beta-6.jar
Download https://repo1.maven.org/maven2/org/apache/maven/wagon/wagon-file/1.0-beta-6/wagon-file-1.0-beta-6.jar
Download https://repo1.maven.org/maven2/org/apache/maven/maven-repository-metadata/2.2.1/maven-repository-metadata-2.2.1.jar
Download https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-interpolation/1.11/plexus-interpolation-1.11.jar
Download https://repo1.maven.org/maven2/org/apache/maven/wagon/wagon-provider-api/1.0-beta-6/wagon-provider-api-1.0-beta-6.jar
Download https://repo1.maven.org/maven2/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar
Download https://repo1.maven.org/maven2/commons-beanutils/commons-beanutils/1.8.0/commons-beanutils-1.8.0.jar
Download https://repo1.maven.org/maven2/net/sf/ezmorph/ezmorph/1.0.6/ezmorph-1.0.6.jar
Download https://repo1.maven.org/maven2/org/apache/maven/maven-model/2.2.1/maven-model-2.2.1.jar
Download https://repo1.maven.org/maven2/commons-lang/commons-lang/2.4/commons-lang-2.4.jar
Download https://repo1.maven.org/maven2/org/apache/maven/maven-artifact/2.2.1/maven-artifact-2.2.1.jar
Download https://repo1.maven.org/maven2/xerces/xercesImpl/2.9.1/xercesImpl-2.9.1.jar
Download https://repo1.maven.org/maven2/org/apache/ant/ant-launcher/1.8.0/ant-launcher-1.8.0.jar
Download https://repo1.maven.org/maven2/org/codehaus/plexus/plexus-utils/1.5.15/plexus-utils-1.5.15.jar
Download https://repo1.maven.org/maven2/xml-apis/xml-apis/1.3.04/xml-apis-1.3.04.jar
Download https://repo1.maven.org/maven2/nekohtml/xercesMinimal/1.9.6.2/xercesMinimal-1.9.6.2.jar
Download https://repo1.maven.org/maven2/junit/junit/3.8.1/junit-3.8.1.jar
Download https://repo1.maven.org/maven2/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar
Download https://repo1.maven.org/maven2/nekohtml/nekohtml/1.9.6.2/nekohtml-1.9.6.2.jar
publishNonDefault is deprecated and has no effect anymore. All variants are now published.
File /root/.android/repositories.cfg could not be loaded.
Checking the license for package Android SDK Platform 27 in /opt/android/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/platforms/android-27
"Install Android SDK Platform 27 (revision: 3)" complete.
"Install Android SDK Platform 27 (revision: 3)" finished.
Download https://repo1.maven.org/maven2/com/android/tools/build/transform-api/2.0.0-deprecated-use-gradle-api/transform-api-2.0.0-deprecated-use-gradle-api.pom
Download https://repo1.maven.org/maven2/com/android/tools/build/transform-api/2.0.0-deprecated-use-gradle-api/transform-api-2.0.0-deprecated-use-gradle-api.jar
Configuration 'compile' in project ':app' is deprecated. Use 'implementation' instead.
The Task.leftShift(Closure) method has been deprecated and is scheduled to be removed in Gradle 5.0. Please use Task.doLast(Action) instead.
	at build_dfh58rhuojl9nahvz0g28kzwn.run(/app/platforms/android/app/build.gradle:144)
:CordovaLib:preBuild UP-TO-DATE
:CordovaLib:preDebugBuild UP-TO-DATE
:CordovaLib:compileDebugAidl
:CordovaLib:compileDebugRenderscript
:CordovaLib:checkDebugManifest
:CordovaLib:generateDebugBuildConfig
:CordovaLib:prepareLintJar
:CordovaLib:generateDebugResValues
:CordovaLib:generateDebugResources
:CordovaLib:packageDebugResources
:CordovaLib:platformAttrExtractor
:CordovaLib:processDebugManifest
:CordovaLib:javaPreCompileDebug
:CordovaLib:processDebugJavaRes NO-SOURCE
:app:preBuild UP-TO-DATE
:app:preDebugBuild
Download https://dl.google.com/dl/android/maven2/com/android/support/support-v4/maven-metadata.xml
Download https://dl.google.com/dl/android/maven2/com/android/support/support-v4/27.1.1/support-v4-27.1.1.pom
Download https://maven.aliyun.com/repository/public/com/android/support/support-v4/maven-metadata.xml
Download https://maven.aliyun.com/repository/public/com/android/support/support-v4/27.1.1/support-v4-27.1.1.pom
Download https://maven.google.com/com/android/support/support-v4/maven-metadata.xml
Download https://dl.google.com/dl/android/maven2/com/android/support/support-compat/27.1.1/support-compat-27.1.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/support/support-media-compat/27.1.1/support-media-compat-27.1.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/support/support-core-utils/27.1.1/support-core-utils-27.1.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/support/support-core-ui/27.1.1/support-core-ui-27.1.1.pom
Download https://dl.google.com/dl/android/maven2/com/android/support/support-fragment/27.1.1/support-fragment-27.1.1.pom
Download https://dl.google.com/dl/android/maven2/android/arch/lifecycle/runtime/1.1.0/runtime-1.1.0.pom
Download https://dl.google.com/dl/android/maven2/com/android/support/support-annotations/27.1.1/support-annotations-27.1.1.pom
Download https://dl.google.com/dl/android/maven2/android/arch/lifecycle/livedata-core/1.1.0/livedata-core-1.1.0.pom
Download https://dl.google.com/dl/android/maven2/android/arch/lifecycle/viewmodel/1.1.0/viewmodel-1.1.0.pom
Download https://dl.google.com/dl/android/maven2/android/arch/lifecycle/common/1.1.0/common-1.1.0.pom
Download https://dl.google.com/dl/android/maven2/android/arch/core/common/1.1.0/common-1.1.0.pom
Download https://dl.google.com/dl/android/maven2/android/arch/core/runtime/1.1.0/runtime-1.1.0.pom
Download https://dl.google.com/dl/android/maven2/com/android/support/support-fragment/27.1.1/support-fragment-27.1.1.aar
Download https://dl.google.com/dl/android/maven2/com/android/support/support-core-utils/27.1.1/support-core-utils-27.1.1.aar
Download https://dl.google.com/dl/android/maven2/com/android/support/support-compat/27.1.1/support-compat-27.1.1.aar
Download https://dl.google.com/dl/android/maven2/android/arch/lifecycle/runtime/1.1.0/runtime-1.1.0.aar
Download https://dl.google.com/dl/android/maven2/com/android/support/support-v4/27.1.1/support-v4-27.1.1.aar
Download https://dl.google.com/dl/android/maven2/com/android/support/support-core-ui/27.1.1/support-core-ui-27.1.1.aar
Download https://dl.google.com/dl/android/maven2/android/arch/lifecycle/livedata-core/1.1.0/livedata-core-1.1.0.aar
Download https://dl.google.com/dl/android/maven2/com/android/support/support-media-compat/27.1.1/support-media-compat-27.1.1.aar
Download https://dl.google.com/dl/android/maven2/android/arch/lifecycle/viewmodel/1.1.0/viewmodel-1.1.0.aar
Download https://dl.google.com/dl/android/maven2/android/arch/core/runtime/1.1.0/runtime-1.1.0.aar
:app:compileDebugAidl
:CordovaLib:packageDebugRenderscript NO-SOURCE
:app:compileDebugRenderscript
:app:checkDebugManifest
:app:generateDebugBuildConfig
:app:prepareLintJar
:app:generateDebugResValues
:app:generateDebugResources
:app:mergeDebugResources
:app:createDebugCompatibleScreenManifests
:app:processDebugManifest
:app:splitsDiscoveryTaskDebug
:app:compileDebugNdk NO-SOURCE
:CordovaLib:mergeDebugShaders
:CordovaLib:compileDebugShaders
:CordovaLib:generateDebugAssets
:CordovaLib:mergeDebugAssets
:app:mergeDebugShaders
:app:compileDebugShaders
:app:generateDebugAssets
:app:mergeDebugAssets
:CordovaLib:compileDebugNdk NO-SOURCE
:CordovaLib:mergeDebugJniLibFolders
:CordovaLib:transformNativeLibsWithMergeJniLibsForDebug
:CordovaLib:transformNativeLibsWithIntermediateJniLibsForDebug
:app:mergeDebugJniLibFolders
:app:processDebugJavaRes NO-SOURCE
:app:validateSigningDebug
:CordovaLib:processDebugResources
:CordovaLib:generateDebugSources
:CordovaLib:compileDebugJavaWithJavacNote: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

:CordovaLib:transformClassesAndResourcesWithPrepareIntermediateJarsForDebug
:app:processDebugResources
:app:generateDebugSources
:app:javaPreCompileDebug
Download https://dl.google.com/dl/android/maven2/android/arch/lifecycle/common/1.1.0/common-1.1.0.jar
Download https://dl.google.com/dl/android/maven2/android/arch/core/common/1.1.0/common-1.1.0.jar
Download https://dl.google.com/dl/android/maven2/com/android/support/support-annotations/27.1.1/support-annotations-27.1.1.jar
:app:compileDebugJavaWithJavac
:app:compileDebugSources
:app:transformClassesWithStackFramesFixerForDebug
:app:transformClassesWithDesugarForDebug
:app:transformClassesWithDexBuilderForDebug
:app:transformDexArchiveWithExternalLibsDexMergerForDebug
:app:transformDexArchiveWithDexMergerForDebug
:app:transformNativeLibsWithMergeJniLibsForDebug
:app:transformResourcesWithMergeJavaResForDebug
:app:packageDebug
:app:assembleDebug
:app:cdvBuildDebug

BUILD SUCCESSFUL in 1m 35s
46 actionable tasks: 46 executed
Command finished with error code 0: /app/platforms/android/gradlew cdvBuildDebug,-b,/app/platforms/android/build.gradle,-Dorg.gradle.daemon=true,-Dorg.gradle.jvmargs=-Xmx2048m
Built the following apk(s): 
	/app/platforms/android/app/build/outputs/apk/debug/app-arm64-v8a-debug.apk
	/app/platforms/android/app/build/outputs/apk/debug/app-armeabi-v7a-debug.apk
	/app/platforms/android/app/build/outputs/apk/debug/app-x86-debug.apk
	/app/platforms/android/app/build/outputs/apk/debug/app-x86_64-debug.apk
No scripts found for hook "after_compile".
No scripts found for hook "after_build".

> docker run --rm -v /home/ubuntu/storage/cordova_assets/extracted/nazimboudeffa-barcode-scanner-cordova-app/barcode-scanner-cordova-app-8ea1390f77b9563d24e44bb0bcdb00b0196603ef:/source:ro -v /home/ubuntu/BachelorsThesis/scripts/cordova/output/nazimboudeffa-barcode-scanner-cordova-app:/output -v /home/ubuntu/.npm:/root/.npm cordova-android:20-jdk8 bash -c set -e
            cp -r /source/. /app
            cd /app
            rm -rf platforms plugins node_modules || true
            rm -rf $GRADLE_USER_HOME || true
            mkdir -p $GRADLE_USER_HOME

            # unset Gradle options
            unset JAVA_OPTS

            # install deps
            if [ -f yarn.lock ]; then
                yarn install --ignore-scripts
            else
                npm install --ignore-scripts
            fi

            # ensure android platform
            cordova platform add android
            cordova prepare android

            # ---- PATCH ROOT GRADLE FILES (CRITICAL FIX) ----
            for f in platforms/android/build.gradle platforms/android/CordovaLib/build.gradle; do
                if [ -f "$f" ]; then
                    sed -i '/buildscript[[:space:]]*{/a\
                repositories {\
                    google()\
                    mavenCentral()\
                    maven { url "https://plugins.gradle.org/m2/" }\
                    maven { url "https://maven.aliyun.com/repository/public" }\
                    maven { url "https://jcenter.bintray.com/" }\
                    maven { url "https://jitpack.io" }\
                }\
            ' "$f" || true

                    sed -i '/allprojects[[:space:]]*{/a\
                repositories {\
                    google()\
                    mavenCentral()\
                    maven { url "https://plugins.gradle.org/m2/" }\
                    maven { url "https://maven.aliyun.com/repository/public" }\
                    maven { url "https://jcenter.bintray.com/" }\
                    maven { url "https://jitpack.io" }\
                }\
            ' "$f" || true
                fi
            done

            # ---- FIX versioncompare (very common failure) ----
            grep -RIl 'com.g00fy2:versioncompare:1.3.4' platforms/android 2>/dev/null | \
            xargs -r sed -i 's/com.g00fy2:versioncompare:1.3.4/io.github.g00fy2:versioncompare:1.5.0/g' || true

            # ---- fix versioncompare imports (CRITICAL) ----
            find platforms/android \( -name "*.gradle" -o -name "*.gradle.kts" \) -print0 | \
            xargs -0 sed -i 's/import com\.g00fy2\.versioncompare\.Version/import io.github.g00fy2.versioncompare.Version/g' || true

            # ---- OPTIONAL: remove illegal JVM args ----
            find platforms/android -type f -exec sed -i 's/--illegal-access=permit//g' {} + || true

            # ---- JDK 8 specific patch ----
            if [ \"8\" = "8" ]; then
                find platforms/android -name "build.gradle" -exec \
                    sed -i 's/compileSdkVersion [0-9]\+/compileSdkVersion 30/g' {} \; || true

                find platforms/android -name "build.gradle" -exec \
                    sed -i 's/targetSdkVersion [0-9]\+/targetSdkVersion 30/g' {} \; || true
            fi

            # ---- android sdk path ----
            echo "sdk.dir=$ANDROID_HOME" > platforms/android/local.properties

            # ---- force APK output (suppress AAB generation) ----
            echo "android.bundle.enableAll=false" >> platforms/android/gradle.properties

            # ---- enable ABI splits ----
            if grep -q 'splits' platforms/android/app/build.gradle 2>/dev/null; then
                sed -i 's/enable false/enable true/' platforms/android/app/build.gradle || true
            else
                sed -i '/^android[[:space:]]*{/a\    splits {\n        abi {\n            reset()\n            enable true\n            universalApk false\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\n        }\n    }' platforms/android/app/build.gradle || true
            fi

            # ---- enable R8 / minification ----
            sed -i 's/minifyEnabled false/minifyEnabled true/' platforms/android/app/build.gradle || true

            # ---- sign release with debug key ----
            sed -i '/buildTypes/,/}/s/release {/release {\n            signingConfig signingConfigs.debug/' platforms/android/app/build.gradle || true

            # ---- build release APK ----
            cordova build android --release --no-interactive --verbose

            cp platforms/android/app/build/outputs/apk/release/*.apk /output/r8/

            # ---- copy TPL metadata ----
            [ -f config.xml ] && cp config.xml /output/r8/ || true
            [ -f plugins/fetch.json ] && cp plugins/fetch.json /output/r8/ || true
            [ -f plugins/android.json ] && cp plugins/android.json /output/r8/ || true
            [ -f platforms/android/app/build.gradle ] && cp platforms/android/app/build.gradle /output/r8/app-build.gradle || true
            [ -f platforms/android/build.gradle ] && cp platforms/android/build.gradle /output/r8/root-build.gradle || true
            [ -f platforms/android/settings.gradle ] && cp platforms/android/settings.gradle /output/r8/ || true
            [ -f package.json ] && cp package.json /output/r8/ || true
            [ -f package-lock.json ] && cp package-lock.json /output/r8/ || true
            [ -f yarn.lock ] && cp yarn.lock /output/r8/ || true
            [ -f pnpm-lock.yaml ] && cp pnpm-lock.yaml /output/r8/ || true
            mkdir -p /output/r8/plugin_manifests
            find plugins -name "plugin.xml" 2>/dev/null | while read f; do cp "$f" /output/r8/plugin_manifests/$(echo "$f" | tr '/' '_') 2>/dev/null; done || true
            find plugins -name "*.gradle" 2>/dev/null | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true
            find platforms/android -name "*.gradle" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true
            mkdir -p /output/r8/libs
            find plugins platforms/android -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true
            find plugins platforms/android -name "*.aar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true
            find plugins platforms/android -name "*.so" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true
            
npm warn old lockfile
npm warn old lockfile The package-lock.json file was created with an old version of npm,
npm warn old lockfile so supplemental metadata must be fetched from the registry.
npm warn old lockfile
npm warn old lockfile This is a one-time fix-up, please be patient...
npm warn old lockfile
npm warn deprecated cordova-plugin-whitelist@1.3.3: See https://github.com/apache/cordova-plugin-whitelist#deprecation-notice for details.
npm warn deprecated phonegap-plugin-barcodescanner@8.0.0: This package is deprecated, see https://blog.phonegap.com/update-for-customers-using-phonegap-and-phonegap-build-cc701c77502c

added 3 packages, and audited 34 packages in 3s

9 vulnerabilities (4 high, 5 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.
Using cordova-fetch for cordova-android@^7.1.1
Adding android project...
Creating Cordova project for the Android platform:
	Path: platforms/android
	Package: biz.aldaffah.scanner
	Name: QR_Code_Scanner
	Activity: MainActivity
	Android target: android-27
Android project created with cordova-android@7.1.1
Android Studio project detected
Android Studio project detected
Discovered plugin "cordova-plugin-whitelist". Adding it to the project
Installing "cordova-plugin-whitelist" for android

               This plugin is only applicable for versions of cordova-android greater than 4.0. If you have a previous platform version, you do *not* need this plugin since the whitelist will be built in.
          
Adding cordova-plugin-whitelist to package.json
Discovered plugin "phonegap-plugin-barcodescanner". Adding it to the project
Installing "phonegap-plugin-barcodescanner" for android
Subproject Path: CordovaLib
Subproject Path: app
Adding phonegap-plugin-barcodescanner to package.json
Android Studio project detected
No scripts found for hook "before_build".
No scripts found for hook "before_prepare".
Checking for saved platforms that haven't been added to the project
Loaded API for android project /app/platforms/android/cordova/Api.js
Android Studio project detected
Checking for saved plugins that haven't been added to the project
Generating platform-specific config.xml from defaults for android at /app/platforms/android/app/src/main/res/xml/config.xml
Merging project's config.xml into platform-specific android config.xml
Merging and updating files from [www, platforms/android/platform_www] to platforms/android/app/src/main/assets/www
  copy  platforms/android/platform_www/cordova-js-src/android/nativeapiprovider.js platforms/android/app/src/main/assets/www/cordova-js-src/android/nativeapiprovider.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/android/promptbasednativeapi.js platforms/android/app/src/main/assets/www/cordova-js-src/android/promptbasednativeapi.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/exec.js platforms/android/app/src/main/assets/www/cordova-js-src/exec.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/platform.js platforms/android/app/src/main/assets/www/cordova-js-src/platform.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/plugin/android/app.js platforms/android/app/src/main/assets/www/cordova-js-src/plugin/android/app.js (updated file)
  copy  platforms/android/platform_www/cordova.js platforms/android/app/src/main/assets/www/cordova.js (updated file)
  copy  platforms/android/platform_www/cordova_plugins.js platforms/android/app/src/main/assets/www/cordova_plugins.js (updated file)
  copy  platforms/android/platform_www/plugins/phonegap-plugin-barcodescanner/www/barcodescanner.js platforms/android/app/src/main/assets/www/plugins/phonegap-plugin-barcodescanner/www/barcodescanner.js (updated file)
Wrote out android application name "QR Code Scanner" to /app/platforms/android/app/src/main/res/values/strings.xml
android-versionCode not found in config.xml. Generating a code based on version in config.xml (1.0.3): 10003
Wrote out Android package name "biz.aldaffah.scanner" to /app/platforms/android/app/src/main/java/biz/aldaffah/scanner/MainActivity.java
This app does not have launcher icons defined
This app does not have splash screens defined
This app does not have additional resource files defined
Prepared android project successfully
No scripts found for hook "after_prepare".
No scripts found for hook "before_compile".
ANDROID_HOME=/opt/android
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
studio
Running command: /root/.sdkman/candidates/gradle/6.5/bin/gradle -p /app/platforms/android wrapper -b /app/platforms/android/wrapper.gradle

Welcome to Gradle 6.5!

Here are the highlights of this release:
 - Experimental file-system watching
 - Improved version ordering
 - New samples

For more details see https://docs.gradle.org/6.5/release-notes.html

> Task :wrapper

BUILD SUCCESSFUL in 5s
1 actionable task: 1 executed
Command finished with error code 0: /root/.sdkman/candidates/gradle/6.5/bin/gradle -p,/app/platforms/android,wrapper,-b,/app/platforms/android/wrapper.gradle
Subproject Path: CordovaLib
Subproject Path: app
Running command: /app/platforms/android/gradlew cdvBuildRelease -b /app/platforms/android/build.gradle -Dorg.gradle.daemon=true -Dorg.gradle.jvmargs=-Xmx2048m
Downloading https://services.gradle.org/distributions/gradle-4.1-all.zip

Exception in thread "main" java.io.IOException: Downloading from https://services.gradle.org/distributions/gradle-4.1-all.zip failed: timeout
	at org.gradle.wrapper.Download.downloadInternal(Download.java:106)
	at org.gradle.wrapper.Download.download(Download.java:66)
	at org.gradle.wrapper.Install$1.call(Install.java:68)
	at org.gradle.wrapper.Install$1.call(Install.java:48)
	at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:69)
	at org.gradle.wrapper.Install.createDist(Install.java:48)
	at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:107)
	at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:63)
Caused by: java.net.SocketTimeoutException: connect timed out
	at java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
	at java.net.Socket.connect(Socket.java:607)
	at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:293)
	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
	at sun.net.www.http.HttpClient.openServer(HttpClient.java:465)
	at sun.net.www.http.HttpClient.openServer(HttpClient.java:560)
	at sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:264)
	at sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:367)
	at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:203)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1179)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1073)
	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:1007)
	at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:189)
	at sun.net.www.protocol.http.HttpURLConnection.followRedirect0(HttpURLConnection.java:2762)
	at sun.net.www.protocol.http.HttpURLConnection.followRedirect(HttpURLConnection.java:2674)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1849)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1517)
	at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:268)
	at org.gradle.wrapper.Download.downloadInternal(Download.java:83)
	... 7 more
Command finished with error code 1: /app/platforms/android/gradlew cdvBuildRelease,-b,/app/platforms/android/build.gradle,-Dorg.gradle.daemon=true,-Dorg.gradle.jvmargs=-Xmx2048m
/app/platforms/android/gradlew: Command failed with exit code 1 Error output:
Exception in thread "main" java.io.IOException: Downloading from https://services.gradle.org/distributions/gradle-4.1-all.zip failed: timeout
	at org.gradle.wrapper.Download.downloadInternal(Download.java:106)
	at org.gradle.wrapper.Download.download(Download.java:66)
	at org.gradle.wrapper.Install$1.call(Install.java:68)
	at org.gradle.wrapper.Install$1.call(Install.java:48)
	at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:69)
	at org.gradle.wrapper.Install.createDist(Install.java:48)
	at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:107)
	at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:63)
Caused by: java.net.SocketTimeoutException: connect timed out
	at java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
	at java.net.Socket.connect(Socket.java:607)
	at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:293)
	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
	at sun.net.www.http.HttpClient.openServer(HttpClient.java:465)
	at sun.net.www.http.HttpClient.openServer(HttpClient.java:560)
	at sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:264)
	at sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:367)
	at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:203)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1179)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1073)
	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:1007)
	at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:189)
	at sun.net.www.protocol.http.HttpURLConnection.followRedirect0(HttpURLConnection.java:2762)
	at sun.net.www.protocol.http.HttpURLConnection.followRedirect(HttpURLConnection.java:2674)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1849)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1517)
	at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:268)
	at org.gradle.wrapper.Download.downloadInternal(Download.java:83)
	... 7 more
Error: /app/platforms/android/gradlew: Command failed with exit code 1 Error output:
Exception in thread "main" java.io.IOException: Downloading from https://services.gradle.org/distributions/gradle-4.1-all.zip failed: timeout
	at org.gradle.wrapper.Download.downloadInternal(Download.java:106)
	at org.gradle.wrapper.Download.download(Download.java:66)
	at org.gradle.wrapper.Install$1.call(Install.java:68)
	at org.gradle.wrapper.Install$1.call(Install.java:48)
	at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:69)
	at org.gradle.wrapper.Install.createDist(Install.java:48)
	at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:107)
	at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:63)
Caused by: java.net.SocketTimeoutException: connect timed out
	at java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
	at java.net.Socket.connect(Socket.java:607)
	at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:293)
	at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
	at sun.net.www.http.HttpClient.openServer(HttpClient.java:465)
	at sun.net.www.http.HttpClient.openServer(HttpClient.java:560)
	at sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:264)
	at sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:367)
	at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:203)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1179)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1073)
	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:1007)
	at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:189)
	at sun.net.www.protocol.http.HttpURLConnection.followRedirect0(HttpURLConnection.java:2762)
	at sun.net.www.protocol.http.HttpURLConnection.followRedirect(HttpURLConnection.java:2674)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1849)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1517)
	at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:268)
	at org.gradle.wrapper.Download.downloadInternal(Download.java:83)
	... 7 more
    at ChildProcess.whenDone (/app/platforms/android/cordova/node_modules/cordova-common/src/superspawn.js:169:23)
    at ChildProcess.emit (node:events:524:28)
    at maybeClose (node:internal/child_process:1104:16)
    at ChildProcess._handle.onexit (node:internal/child_process:304:5)

> echo Build failed with Node 20 and JDK 8: Command '['docker', 'run', '--rm', '-v', '/home/ubuntu/storage/cordova_assets/extracted/nazimboudeffa-barcode-scanner-cordova-app/barcode-scanner-cordova-app-8ea1390f77b9563d24e44bb0bcdb00b0196603ef:/source:ro', '-v', '/home/ubuntu/BachelorsThesis/scripts/cordova/output/nazimboudeffa-barcode-scanner-cordova-app:/output', '-v', '/home/ubuntu/.npm:/root/.npm', 'cordova-android:20-jdk8', 'bash', '-c', 'set -e\n            cp -r /source/. /app\n            cd /app\n            rm -rf platforms plugins node_modules || true\n            rm -rf $GRADLE_USER_HOME || true\n            mkdir -p $GRADLE_USER_HOME\n\n            # unset Gradle options\n            unset JAVA_OPTS\n\n            # install deps\n            if [ -f yarn.lock ]; then\n                yarn install --ignore-scripts\n            else\n                npm install --ignore-scripts\n            fi\n\n            # ensure android platform\n            cordova platform add android\n            cordova prepare android\n\n            # ---- PATCH ROOT GRADLE FILES (CRITICAL FIX) ----\n            for f in platforms/android/build.gradle platforms/android/CordovaLib/build.gradle; do\n                if [ -f "$f" ]; then\n                    sed -i \'/buildscript[[:space:]]*{/a\\\n                repositories {\\\n                    google()\\\n                    mavenCentral()\\\n                    maven { url "https://plugins.gradle.org/m2/" }\\\n                    maven { url "https://maven.aliyun.com/repository/public" }\\\n                    maven { url "https://jcenter.bintray.com/" }\\\n                    maven { url "https://jitpack.io" }\\\n                }\\\n            \' "$f" || true\n\n                    sed -i \'/allprojects[[:space:]]*{/a\\\n                repositories {\\\n                    google()\\\n                    mavenCentral()\\\n                    maven { url "https://plugins.gradle.org/m2/" }\\\n                    maven { url "https://maven.aliyun.com/repository/public" }\\\n                    maven { url "https://jcenter.bintray.com/" }\\\n                    maven { url "https://jitpack.io" }\\\n                }\\\n            \' "$f" || true\n                fi\n            done\n\n            # ---- FIX versioncompare (very common failure) ----\n            grep -RIl \'com.g00fy2:versioncompare:1.3.4\' platforms/android 2>/dev/null | \\\n            xargs -r sed -i \'s/com.g00fy2:versioncompare:1.3.4/io.github.g00fy2:versioncompare:1.5.0/g\' || true\n\n            # ---- fix versioncompare imports (CRITICAL) ----\n            find platforms/android \\( -name "*.gradle" -o -name "*.gradle.kts" \\) -print0 | \\\n            xargs -0 sed -i \'s/import com\\.g00fy2\\.versioncompare\\.Version/import io.github.g00fy2.versioncompare.Version/g\' || true\n\n            # ---- OPTIONAL: remove illegal JVM args ----\n            find platforms/android -type f -exec sed -i \'s/--illegal-access=permit//g\' {} + || true\n\n            # ---- JDK 8 specific patch ----\n            if [ \\"8\\" = "8" ]; then\n                find platforms/android -name "build.gradle" -exec \\\n                    sed -i \'s/compileSdkVersion [0-9]\\+/compileSdkVersion 30/g\' {} \\; || true\n\n                find platforms/android -name "build.gradle" -exec \\\n                    sed -i \'s/targetSdkVersion [0-9]\\+/targetSdkVersion 30/g\' {} \\; || true\n            fi\n\n            # ---- android sdk path ----\n            echo "sdk.dir=$ANDROID_HOME" > platforms/android/local.properties\n\n            # ---- force APK output (suppress AAB generation) ----\n            echo "android.bundle.enableAll=false" >> platforms/android/gradle.properties\n\n            # ---- enable ABI splits ----\n            if grep -q \'splits\' platforms/android/app/build.gradle 2>/dev/null; then\n                sed -i \'s/enable false/enable true/\' platforms/android/app/build.gradle || true\n            else\n                sed -i \'/^android[[:space:]]*{/a\\    splits {\\n        abi {\\n            reset()\\n            enable true\\n            universalApk false\\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\\n        }\\n    }\' platforms/android/app/build.gradle || true\n            fi\n\n            # ---- enable R8 / minification ----\n            sed -i \'s/minifyEnabled false/minifyEnabled true/\' platforms/android/app/build.gradle || true\n\n            # ---- sign release with debug key ----\n            sed -i \'/buildTypes/,/}/s/release {/release {\\n            signingConfig signingConfigs.debug/\' platforms/android/app/build.gradle || true\n\n            # ---- build release APK ----\n            cordova build android --release --no-interactive --verbose\n\n            cp platforms/android/app/build/outputs/apk/release/*.apk /output/r8/\n\n            # ---- copy TPL metadata ----\n            [ -f config.xml ] && cp config.xml /output/r8/ || true\n            [ -f plugins/fetch.json ] && cp plugins/fetch.json /output/r8/ || true\n            [ -f plugins/android.json ] && cp plugins/android.json /output/r8/ || true\n            [ -f platforms/android/app/build.gradle ] && cp platforms/android/app/build.gradle /output/r8/app-build.gradle || true\n            [ -f platforms/android/build.gradle ] && cp platforms/android/build.gradle /output/r8/root-build.gradle || true\n            [ -f platforms/android/settings.gradle ] && cp platforms/android/settings.gradle /output/r8/ || true\n            [ -f package.json ] && cp package.json /output/r8/ || true\n            [ -f package-lock.json ] && cp package-lock.json /output/r8/ || true\n            [ -f yarn.lock ] && cp yarn.lock /output/r8/ || true\n            [ -f pnpm-lock.yaml ] && cp pnpm-lock.yaml /output/r8/ || true\n            mkdir -p /output/r8/plugin_manifests\n            find plugins -name "plugin.xml" 2>/dev/null | while read f; do cp "$f" /output/r8/plugin_manifests/$(echo "$f" | tr \'/\' \'_\') 2>/dev/null; done || true\n            find plugins -name "*.gradle" 2>/dev/null | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n            find platforms/android -name "*.gradle" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n            mkdir -p /output/r8/libs\n            find plugins platforms/android -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n            find plugins platforms/android -name "*.aar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n            find plugins platforms/android -name "*.so" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n            ']' returned non-zero exit status 1.
Build failed with Node 20 and JDK 8: Command '['docker', 'run', '--rm', '-v', '/home/ubuntu/storage/cordova_assets/extracted/nazimboudeffa-barcode-scanner-cordova-app/barcode-scanner-cordova-app-8ea1390f77b9563d24e44bb0bcdb00b0196603ef:/source:ro', '-v', '/home/ubuntu/BachelorsThesis/scripts/cordova/output/nazimboudeffa-barcode-scanner-cordova-app:/output', '-v', '/home/ubuntu/.npm:/root/.npm', 'cordova-android:20-jdk8', 'bash', '-c', 'set -e\n            cp -r /source/. /app\n            cd /app\n            rm -rf platforms plugins node_modules || true\n            rm -rf $GRADLE_USER_HOME || true\n            mkdir -p $GRADLE_USER_HOME\n\n            # unset Gradle options\n            unset JAVA_OPTS\n\n            # install deps\n            if [ -f yarn.lock ]; then\n                yarn install --ignore-scripts\n            else\n                npm install --ignore-scripts\n            fi\n\n            # ensure android platform\n            cordova platform add android\n            cordova prepare android\n\n            # ---- PATCH ROOT GRADLE FILES (CRITICAL FIX) ----\n            for f in platforms/android/build.gradle platforms/android/CordovaLib/build.gradle; do\n                if [ -f "$f" ]; then\n                    sed -i \'/buildscript[[:space:]]*{/a\\\n                repositories {\\\n                    google()\\\n                    mavenCentral()\\\n                    maven { url "https://plugins.gradle.org/m2/" }\\\n                    maven { url "https://maven.aliyun.com/repository/public" }\\\n                    maven { url "https://jcenter.bintray.com/" }\\\n                    maven { url "https://jitpack.io" }\\\n                }\\\n            \' "$f" || true\n\n                    sed -i \'/allprojects[[:space:]]*{/a\\\n                repositories {\\\n                    google()\\\n                    mavenCentral()\\\n                    maven { url "https://plugins.gradle.org/m2/" }\\\n                    maven { url "https://maven.aliyun.com/repository/public" }\\\n                    maven { url "https://jcenter.bintray.com/" }\\\n                    maven { url "https://jitpack.io" }\\\n                }\\\n            \' "$f" || true\n                fi\n            done\n\n            # ---- FIX versioncompare (very common failure) ----\n            grep -RIl \'com.g00fy2:versioncompare:1.3.4\' platforms/android 2>/dev/null | \\\n            xargs -r sed -i \'s/com.g00fy2:versioncompare:1.3.4/io.github.g00fy2:versioncompare:1.5.0/g\' || true\n\n            # ---- fix versioncompare imports (CRITICAL) ----\n            find platforms/android \\( -name "*.gradle" -o -name "*.gradle.kts" \\) -print0 | \\\n            xargs -0 sed -i \'s/import com\\.g00fy2\\.versioncompare\\.Version/import io.github.g00fy2.versioncompare.Version/g\' || true\n\n            # ---- OPTIONAL: remove illegal JVM args ----\n            find platforms/android -type f -exec sed -i \'s/--illegal-access=permit//g\' {} + || true\n\n            # ---- JDK 8 specific patch ----\n            if [ \\"8\\" = "8" ]; then\n                find platforms/android -name "build.gradle" -exec \\\n                    sed -i \'s/compileSdkVersion [0-9]\\+/compileSdkVersion 30/g\' {} \\; || true\n\n                find platforms/android -name "build.gradle" -exec \\\n                    sed -i \'s/targetSdkVersion [0-9]\\+/targetSdkVersion 30/g\' {} \\; || true\n            fi\n\n            # ---- android sdk path ----\n            echo "sdk.dir=$ANDROID_HOME" > platforms/android/local.properties\n\n            # ---- force APK output (suppress AAB generation) ----\n            echo "android.bundle.enableAll=false" >> platforms/android/gradle.properties\n\n            # ---- enable ABI splits ----\n            if grep -q \'splits\' platforms/android/app/build.gradle 2>/dev/null; then\n                sed -i \'s/enable false/enable true/\' platforms/android/app/build.gradle || true\n            else\n                sed -i \'/^android[[:space:]]*{/a\\    splits {\\n        abi {\\n            reset()\\n            enable true\\n            universalApk false\\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\\n        }\\n    }\' platforms/android/app/build.gradle || true\n            fi\n\n            # ---- enable R8 / minification ----\n            sed -i \'s/minifyEnabled false/minifyEnabled true/\' platforms/android/app/build.gradle || true\n\n            # ---- sign release with debug key ----\n            sed -i \'/buildTypes/,/}/s/release {/release {\\n            signingConfig signingConfigs.debug/\' platforms/android/app/build.gradle || true\n\n            # ---- build release APK ----\n            cordova build android --release --no-interactive --verbose\n\n            cp platforms/android/app/build/outputs/apk/release/*.apk /output/r8/\n\n            # ---- copy TPL metadata ----\n            [ -f config.xml ] && cp config.xml /output/r8/ || true\n            [ -f plugins/fetch.json ] && cp plugins/fetch.json /output/r8/ || true\n            [ -f plugins/android.json ] && cp plugins/android.json /output/r8/ || true\n            [ -f platforms/android/app/build.gradle ] && cp platforms/android/app/build.gradle /output/r8/app-build.gradle || true\n            [ -f platforms/android/build.gradle ] && cp platforms/android/build.gradle /output/r8/root-build.gradle || true\n            [ -f platforms/android/settings.gradle ] && cp platforms/android/settings.gradle /output/r8/ || true\n            [ -f package.json ] && cp package.json /output/r8/ || true\n            [ -f package-lock.json ] && cp package-lock.json /output/r8/ || true\n            [ -f yarn.lock ] && cp yarn.lock /output/r8/ || true\n            [ -f pnpm-lock.yaml ] && cp pnpm-lock.yaml /output/r8/ || true\n            mkdir -p /output/r8/plugin_manifests\n            find plugins -name "plugin.xml" 2>/dev/null | while read f; do cp "$f" /output/r8/plugin_manifests/$(echo "$f" | tr \'/\' \'_\') 2>/dev/null; done || true\n            find plugins -name "*.gradle" 2>/dev/null | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n            find platforms/android -name "*.gradle" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/r8/ 2>/dev/null; done || true\n            mkdir -p /output/r8/libs\n            find plugins platforms/android -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n            find plugins platforms/android -name "*.aar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n            find plugins platforms/android -name "*.so" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/r8/libs/ 2>/dev/null; done || true\n            ']' returned non-zero exit status 1.

> echo Attempting build for nazimboudeffa-barcode-scanner-cordova-app with Node 20 and JDK 11
Attempting build for nazimboudeffa-barcode-scanner-cordova-app with Node 20 and JDK 11

> docker run --rm -v /home/ubuntu/storage/cordova_assets/extracted/nazimboudeffa-barcode-scanner-cordova-app/barcode-scanner-cordova-app-8ea1390f77b9563d24e44bb0bcdb00b0196603ef:/source:ro -v /home/ubuntu/BachelorsThesis/scripts/cordova/output/nazimboudeffa-barcode-scanner-cordova-app:/output -v /home/ubuntu/.npm:/root/.npm cordova-android:20-jdk11 bash -c set -e
            cp -r /source/. /app
            cd /app
            rm -rf platforms plugins node_modules || true
            rm -rf $GRADLE_USER_HOME || true
            mkdir -p $GRADLE_USER_HOME

            # unset Gradle options
            unset JAVA_OPTS

            # install deps
            if [ -f yarn.lock ]; then
                yarn install --ignore-scripts
            else
                npm install --ignore-scripts
            fi

            # ensure android platform
            cordova platform add android
            cordova prepare android

            # ---- PATCH ROOT GRADLE FILES (CRITICAL FIX) ----
            for f in platforms/android/build.gradle platforms/android/CordovaLib/build.gradle; do
                if [ -f "$f" ]; then
                    # add missing repositories to buildscript + allprojects
                    sed -i '/buildscript[[:space:]]*{/a\
                repositories {\
                    google()\
                    mavenCentral()\
                    maven { url "https://plugins.gradle.org/m2/" }\
                    maven { url "https://maven.aliyun.com/repository/public" }\
                    maven { url "https://jcenter.bintray.com/" }\
                    maven { url "https://jitpack.io" }\
                }\
            ' "$f" || true

                    sed -i '/allprojects[[:space:]]*{/a\
                repositories {\
                    google()\
                    mavenCentral()\
                    maven { url "https://plugins.gradle.org/m2/" }\
                    maven { url "https://maven.aliyun.com/repository/public" }\
                    maven { url "https://jcenter.bintray.com/" }\
                    maven { url "https://jitpack.io" }\
                }\
            ' "$f" || true
                fi
            done

            # ---- FIX versioncompare (very common failure) ----
            grep -RIl 'com.g00fy2:versioncompare:1.3.4' platforms/android 2>/dev/null | \
            xargs -r sed -i 's/com.g00fy2:versioncompare:1.3.4/io.github.g00fy2:versioncompare:1.5.0/g' || true

            # ---- fix versioncompare imports (CRITICAL) ----
            find platforms/android \( -name "*.gradle" -o -name "*.gradle.kts" \) -print0 | \
            xargs -0 sed -i 's/import com\.g00fy2\.versioncompare\.Version/import io.github.g00fy2.versioncompare.Version/g' || true

            # ---- OPTIONAL: remove illegal JVM args ----
            find platforms/android -type f -exec sed -i 's/--illegal-access=permit//g' {} + || true

            # ---- JDK 8 specific patch (minimal, no overwrite!) ----
            if [ \"11\" = "8" ]; then
                # ensure older sdk usage (do NOT overwrite build.gradle anymore)
                find platforms/android -name "build.gradle" -exec \
                    sed -i 's/compileSdkVersion [0-9]\+/compileSdkVersion 30/g' {} \; || true

                find platforms/android -name "build.gradle" -exec \
                    sed -i 's/targetSdkVersion [0-9]\+/targetSdkVersion 30/g' {} \; || true
            fi

            # ---- android sdk path ----
            echo "sdk.dir=$ANDROID_HOME" > platforms/android/local.properties

            # ---- force APK output (suppress AAB generation) ----
            echo "android.bundle.enableAll=false" >> platforms/android/gradle.properties

            # ---- enable ABI splits ----
            if grep -q 'splits' platforms/android/app/build.gradle 2>/dev/null; then
                sed -i 's/enable false/enable true/' platforms/android/app/build.gradle || true
            else
                sed -i '/^android[[:space:]]*{/a\    splits {\n        abi {\n            reset()\n            enable true\n            universalApk false\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\n        }\n    }' platforms/android/app/build.gradle || true
            fi

            # ---- build debug APK ----
            cordova build android --debug --no-interactive --verbose

            cp platforms/android/app/build/outputs/apk/debug/*.apk /output/

            # ---- copy TPL metadata ----
            [ -f config.xml ] && cp config.xml /output/ || true
            [ -f plugins/fetch.json ] && cp plugins/fetch.json /output/ || true
            [ -f plugins/android.json ] && cp plugins/android.json /output/ || true
            [ -f platforms/android/app/build.gradle ] && cp platforms/android/app/build.gradle /output/app-build.gradle || true
            [ -f platforms/android/build.gradle ] && cp platforms/android/build.gradle /output/root-build.gradle || true
            [ -f platforms/android/settings.gradle ] && cp platforms/android/settings.gradle /output/ || true
            [ -f package.json ] && cp package.json /output/ || true
            [ -f package-lock.json ] && cp package-lock.json /output/ || true
            [ -f yarn.lock ] && cp yarn.lock /output/ || true
            [ -f pnpm-lock.yaml ] && cp pnpm-lock.yaml /output/ || true
            mkdir -p /output/plugin_manifests
            find plugins -name "plugin.xml" 2>/dev/null | while read f; do cp "$f" /output/plugin_manifests/$(echo "$f" | tr '/' '_') 2>/dev/null; done || true
            find plugins -name "*.gradle" 2>/dev/null | while read f; do cp "$f" /output/ 2>/dev/null; done || true
            find platforms/android -name "*.gradle" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/ 2>/dev/null; done || true
            mkdir -p /output/libs
            find plugins platforms/android -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
            find plugins platforms/android -name "*.aar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
            find plugins platforms/android -name "*.so" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
            
npm warn old lockfile
npm warn old lockfile The package-lock.json file was created with an old version of npm,
npm warn old lockfile so supplemental metadata must be fetched from the registry.
npm warn old lockfile
npm warn old lockfile This is a one-time fix-up, please be patient...
npm warn old lockfile
npm warn deprecated cordova-plugin-whitelist@1.3.3: See https://github.com/apache/cordova-plugin-whitelist#deprecation-notice for details.
npm warn deprecated phonegap-plugin-barcodescanner@8.0.0: This package is deprecated, see https://blog.phonegap.com/update-for-customers-using-phonegap-and-phonegap-build-cc701c77502c

added 3 packages, and audited 34 packages in 2s

9 vulnerabilities (4 high, 5 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.
Using cordova-fetch for cordova-android@^7.1.1
Adding android project...
Creating Cordova project for the Android platform:
	Path: platforms/android
	Package: biz.aldaffah.scanner
	Name: QR_Code_Scanner
	Activity: MainActivity
	Android target: android-27
Android project created with cordova-android@7.1.1
Android Studio project detected
Android Studio project detected
Discovered plugin "cordova-plugin-whitelist". Adding it to the project
Installing "cordova-plugin-whitelist" for android

               This plugin is only applicable for versions of cordova-android greater than 4.0. If you have a previous platform version, you do *not* need this plugin since the whitelist will be built in.
          
Adding cordova-plugin-whitelist to package.json
Discovered plugin "phonegap-plugin-barcodescanner". Adding it to the project
Installing "phonegap-plugin-barcodescanner" for android
Subproject Path: CordovaLib
Subproject Path: app
Adding phonegap-plugin-barcodescanner to package.json
Android Studio project detected
No scripts found for hook "before_build".
No scripts found for hook "before_prepare".
Checking for saved platforms that haven't been added to the project
Loaded API for android project /app/platforms/android/cordova/Api.js
Android Studio project detected
Checking for saved plugins that haven't been added to the project
Generating platform-specific config.xml from defaults for android at /app/platforms/android/app/src/main/res/xml/config.xml
Merging project's config.xml into platform-specific android config.xml
Merging and updating files from [www, platforms/android/platform_www] to platforms/android/app/src/main/assets/www
  copy  platforms/android/platform_www/cordova-js-src/android/nativeapiprovider.js platforms/android/app/src/main/assets/www/cordova-js-src/android/nativeapiprovider.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/android/promptbasednativeapi.js platforms/android/app/src/main/assets/www/cordova-js-src/android/promptbasednativeapi.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/exec.js platforms/android/app/src/main/assets/www/cordova-js-src/exec.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/platform.js platforms/android/app/src/main/assets/www/cordova-js-src/platform.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/plugin/android/app.js platforms/android/app/src/main/assets/www/cordova-js-src/plugin/android/app.js (updated file)
  copy  platforms/android/platform_www/cordova.js platforms/android/app/src/main/assets/www/cordova.js (updated file)
  copy  platforms/android/platform_www/cordova_plugins.js platforms/android/app/src/main/assets/www/cordova_plugins.js (updated file)
  copy  platforms/android/platform_www/plugins/phonegap-plugin-barcodescanner/www/barcodescanner.js platforms/android/app/src/main/assets/www/plugins/phonegap-plugin-barcodescanner/www/barcodescanner.js (updated file)
Wrote out android application name "QR Code Scanner" to /app/platforms/android/app/src/main/res/values/strings.xml
android-versionCode not found in config.xml. Generating a code based on version in config.xml (1.0.3): 10003
Wrote out Android package name "biz.aldaffah.scanner" to /app/platforms/android/app/src/main/java/biz/aldaffah/scanner/MainActivity.java
This app does not have launcher icons defined
This app does not have splash screens defined
This app does not have additional resource files defined
Prepared android project successfully
No scripts found for hook "after_prepare".
No scripts found for hook "before_compile".
ANDROID_HOME=/opt/android
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
Requirements check failed for JDK 1.8
CordovaError: Requirements check failed for JDK 1.8
    at /app/platforms/android/cordova/lib/check_reqs.js:362:19
    at _fulfilled (/app/platforms/android/cordova/node_modules/q/q.js:834:54)
    at /app/platforms/android/cordova/node_modules/q/q.js:863:30
    at Promise.promise.promiseDispatch (/app/platforms/android/cordova/node_modules/q/q.js:796:13)
    at /app/platforms/android/cordova/node_modules/q/q.js:604:44
    at runSingle (/app/platforms/android/cordova/node_modules/q/q.js:137:13)
    at flush (/app/platforms/android/cordova/node_modules/q/q.js:125:13)
    at process.processTicksAndRejections (node:internal/process/task_queues:77:11)
cp: cannot stat 'platforms/android/app/build/outputs/apk/debug/*.apk': No such file or directory

> echo Build failed with Node 20 and JDK 11: Command '['docker', 'run', '--rm', '-v', '/home/ubuntu/storage/cordova_assets/extracted/nazimboudeffa-barcode-scanner-cordova-app/barcode-scanner-cordova-app-8ea1390f77b9563d24e44bb0bcdb00b0196603ef:/source:ro', '-v', '/home/ubuntu/BachelorsThesis/scripts/cordova/output/nazimboudeffa-barcode-scanner-cordova-app:/output', '-v', '/home/ubuntu/.npm:/root/.npm', 'cordova-android:20-jdk11', 'bash', '-c', 'set -e\n            cp -r /source/. /app\n            cd /app\n            rm -rf platforms plugins node_modules || true\n            rm -rf $GRADLE_USER_HOME || true\n            mkdir -p $GRADLE_USER_HOME\n\n            # unset Gradle options\n            unset JAVA_OPTS\n\n            # install deps\n            if [ -f yarn.lock ]; then\n                yarn install --ignore-scripts\n            else\n                npm install --ignore-scripts\n            fi\n\n            # ensure android platform\n            cordova platform add android\n            cordova prepare android\n\n            # ---- PATCH ROOT GRADLE FILES (CRITICAL FIX) ----\n            for f in platforms/android/build.gradle platforms/android/CordovaLib/build.gradle; do\n                if [ -f "$f" ]; then\n                    # add missing repositories to buildscript + allprojects\n                    sed -i \'/buildscript[[:space:]]*{/a\\\n                repositories {\\\n                    google()\\\n                    mavenCentral()\\\n                    maven { url "https://plugins.gradle.org/m2/" }\\\n                    maven { url "https://maven.aliyun.com/repository/public" }\\\n                    maven { url "https://jcenter.bintray.com/" }\\\n                    maven { url "https://jitpack.io" }\\\n                }\\\n            \' "$f" || true\n\n                    sed -i \'/allprojects[[:space:]]*{/a\\\n                repositories {\\\n                    google()\\\n                    mavenCentral()\\\n                    maven { url "https://plugins.gradle.org/m2/" }\\\n                    maven { url "https://maven.aliyun.com/repository/public" }\\\n                    maven { url "https://jcenter.bintray.com/" }\\\n                    maven { url "https://jitpack.io" }\\\n                }\\\n            \' "$f" || true\n                fi\n            done\n\n            # ---- FIX versioncompare (very common failure) ----\n            grep -RIl \'com.g00fy2:versioncompare:1.3.4\' platforms/android 2>/dev/null | \\\n            xargs -r sed -i \'s/com.g00fy2:versioncompare:1.3.4/io.github.g00fy2:versioncompare:1.5.0/g\' || true\n\n            # ---- fix versioncompare imports (CRITICAL) ----\n            find platforms/android \\( -name "*.gradle" -o -name "*.gradle.kts" \\) -print0 | \\\n            xargs -0 sed -i \'s/import com\\.g00fy2\\.versioncompare\\.Version/import io.github.g00fy2.versioncompare.Version/g\' || true\n\n            # ---- OPTIONAL: remove illegal JVM args ----\n            find platforms/android -type f -exec sed -i \'s/--illegal-access=permit//g\' {} + || true\n\n            # ---- JDK 8 specific patch (minimal, no overwrite!) ----\n            if [ \\"11\\" = "8" ]; then\n                # ensure older sdk usage (do NOT overwrite build.gradle anymore)\n                find platforms/android -name "build.gradle" -exec \\\n                    sed -i \'s/compileSdkVersion [0-9]\\+/compileSdkVersion 30/g\' {} \\; || true\n\n                find platforms/android -name "build.gradle" -exec \\\n                    sed -i \'s/targetSdkVersion [0-9]\\+/targetSdkVersion 30/g\' {} \\; || true\n            fi\n\n            # ---- android sdk path ----\n            echo "sdk.dir=$ANDROID_HOME" > platforms/android/local.properties\n\n            # ---- force APK output (suppress AAB generation) ----\n            echo "android.bundle.enableAll=false" >> platforms/android/gradle.properties\n\n            # ---- enable ABI splits ----\n            if grep -q \'splits\' platforms/android/app/build.gradle 2>/dev/null; then\n                sed -i \'s/enable false/enable true/\' platforms/android/app/build.gradle || true\n            else\n                sed -i \'/^android[[:space:]]*{/a\\    splits {\\n        abi {\\n            reset()\\n            enable true\\n            universalApk false\\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\\n        }\\n    }\' platforms/android/app/build.gradle || true\n            fi\n\n            # ---- build debug APK ----\n            cordova build android --debug --no-interactive --verbose\n\n            cp platforms/android/app/build/outputs/apk/debug/*.apk /output/\n\n            # ---- copy TPL metadata ----\n            [ -f config.xml ] && cp config.xml /output/ || true\n            [ -f plugins/fetch.json ] && cp plugins/fetch.json /output/ || true\n            [ -f plugins/android.json ] && cp plugins/android.json /output/ || true\n            [ -f platforms/android/app/build.gradle ] && cp platforms/android/app/build.gradle /output/app-build.gradle || true\n            [ -f platforms/android/build.gradle ] && cp platforms/android/build.gradle /output/root-build.gradle || true\n            [ -f platforms/android/settings.gradle ] && cp platforms/android/settings.gradle /output/ || true\n            [ -f package.json ] && cp package.json /output/ || true\n            [ -f package-lock.json ] && cp package-lock.json /output/ || true\n            [ -f yarn.lock ] && cp yarn.lock /output/ || true\n            [ -f pnpm-lock.yaml ] && cp pnpm-lock.yaml /output/ || true\n            mkdir -p /output/plugin_manifests\n            find plugins -name "plugin.xml" 2>/dev/null | while read f; do cp "$f" /output/plugin_manifests/$(echo "$f" | tr \'/\' \'_\') 2>/dev/null; done || true\n            find plugins -name "*.gradle" 2>/dev/null | while read f; do cp "$f" /output/ 2>/dev/null; done || true\n            find platforms/android -name "*.gradle" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/ 2>/dev/null; done || true\n            mkdir -p /output/libs\n            find plugins platforms/android -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true\n            find plugins platforms/android -name "*.aar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true\n            find plugins platforms/android -name "*.so" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true\n            ']' returned non-zero exit status 1.
Build failed with Node 20 and JDK 11: Command '['docker', 'run', '--rm', '-v', '/home/ubuntu/storage/cordova_assets/extracted/nazimboudeffa-barcode-scanner-cordova-app/barcode-scanner-cordova-app-8ea1390f77b9563d24e44bb0bcdb00b0196603ef:/source:ro', '-v', '/home/ubuntu/BachelorsThesis/scripts/cordova/output/nazimboudeffa-barcode-scanner-cordova-app:/output', '-v', '/home/ubuntu/.npm:/root/.npm', 'cordova-android:20-jdk11', 'bash', '-c', 'set -e\n            cp -r /source/. /app\n            cd /app\n            rm -rf platforms plugins node_modules || true\n            rm -rf $GRADLE_USER_HOME || true\n            mkdir -p $GRADLE_USER_HOME\n\n            # unset Gradle options\n            unset JAVA_OPTS\n\n            # install deps\n            if [ -f yarn.lock ]; then\n                yarn install --ignore-scripts\n            else\n                npm install --ignore-scripts\n            fi\n\n            # ensure android platform\n            cordova platform add android\n            cordova prepare android\n\n            # ---- PATCH ROOT GRADLE FILES (CRITICAL FIX) ----\n            for f in platforms/android/build.gradle platforms/android/CordovaLib/build.gradle; do\n                if [ -f "$f" ]; then\n                    # add missing repositories to buildscript + allprojects\n                    sed -i \'/buildscript[[:space:]]*{/a\\\n                repositories {\\\n                    google()\\\n                    mavenCentral()\\\n                    maven { url "https://plugins.gradle.org/m2/" }\\\n                    maven { url "https://maven.aliyun.com/repository/public" }\\\n                    maven { url "https://jcenter.bintray.com/" }\\\n                    maven { url "https://jitpack.io" }\\\n                }\\\n            \' "$f" || true\n\n                    sed -i \'/allprojects[[:space:]]*{/a\\\n                repositories {\\\n                    google()\\\n                    mavenCentral()\\\n                    maven { url "https://plugins.gradle.org/m2/" }\\\n                    maven { url "https://maven.aliyun.com/repository/public" }\\\n                    maven { url "https://jcenter.bintray.com/" }\\\n                    maven { url "https://jitpack.io" }\\\n                }\\\n            \' "$f" || true\n                fi\n            done\n\n            # ---- FIX versioncompare (very common failure) ----\n            grep -RIl \'com.g00fy2:versioncompare:1.3.4\' platforms/android 2>/dev/null | \\\n            xargs -r sed -i \'s/com.g00fy2:versioncompare:1.3.4/io.github.g00fy2:versioncompare:1.5.0/g\' || true\n\n            # ---- fix versioncompare imports (CRITICAL) ----\n            find platforms/android \\( -name "*.gradle" -o -name "*.gradle.kts" \\) -print0 | \\\n            xargs -0 sed -i \'s/import com\\.g00fy2\\.versioncompare\\.Version/import io.github.g00fy2.versioncompare.Version/g\' || true\n\n            # ---- OPTIONAL: remove illegal JVM args ----\n            find platforms/android -type f -exec sed -i \'s/--illegal-access=permit//g\' {} + || true\n\n            # ---- JDK 8 specific patch (minimal, no overwrite!) ----\n            if [ \\"11\\" = "8" ]; then\n                # ensure older sdk usage (do NOT overwrite build.gradle anymore)\n                find platforms/android -name "build.gradle" -exec \\\n                    sed -i \'s/compileSdkVersion [0-9]\\+/compileSdkVersion 30/g\' {} \\; || true\n\n                find platforms/android -name "build.gradle" -exec \\\n                    sed -i \'s/targetSdkVersion [0-9]\\+/targetSdkVersion 30/g\' {} \\; || true\n            fi\n\n            # ---- android sdk path ----\n            echo "sdk.dir=$ANDROID_HOME" > platforms/android/local.properties\n\n            # ---- force APK output (suppress AAB generation) ----\n            echo "android.bundle.enableAll=false" >> platforms/android/gradle.properties\n\n            # ---- enable ABI splits ----\n            if grep -q \'splits\' platforms/android/app/build.gradle 2>/dev/null; then\n                sed -i \'s/enable false/enable true/\' platforms/android/app/build.gradle || true\n            else\n                sed -i \'/^android[[:space:]]*{/a\\    splits {\\n        abi {\\n            reset()\\n            enable true\\n            universalApk false\\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\\n        }\\n    }\' platforms/android/app/build.gradle || true\n            fi\n\n            # ---- build debug APK ----\n            cordova build android --debug --no-interactive --verbose\n\n            cp platforms/android/app/build/outputs/apk/debug/*.apk /output/\n\n            # ---- copy TPL metadata ----\n            [ -f config.xml ] && cp config.xml /output/ || true\n            [ -f plugins/fetch.json ] && cp plugins/fetch.json /output/ || true\n            [ -f plugins/android.json ] && cp plugins/android.json /output/ || true\n            [ -f platforms/android/app/build.gradle ] && cp platforms/android/app/build.gradle /output/app-build.gradle || true\n            [ -f platforms/android/build.gradle ] && cp platforms/android/build.gradle /output/root-build.gradle || true\n            [ -f platforms/android/settings.gradle ] && cp platforms/android/settings.gradle /output/ || true\n            [ -f package.json ] && cp package.json /output/ || true\n            [ -f package-lock.json ] && cp package-lock.json /output/ || true\n            [ -f yarn.lock ] && cp yarn.lock /output/ || true\n            [ -f pnpm-lock.yaml ] && cp pnpm-lock.yaml /output/ || true\n            mkdir -p /output/plugin_manifests\n            find plugins -name "plugin.xml" 2>/dev/null | while read f; do cp "$f" /output/plugin_manifests/$(echo "$f" | tr \'/\' \'_\') 2>/dev/null; done || true\n            find plugins -name "*.gradle" 2>/dev/null | while read f; do cp "$f" /output/ 2>/dev/null; done || true\n            find platforms/android -name "*.gradle" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/ 2>/dev/null; done || true\n            mkdir -p /output/libs\n            find plugins platforms/android -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true\n            find plugins platforms/android -name "*.aar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true\n            find plugins platforms/android -name "*.so" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true\n            ']' returned non-zero exit status 1.

> echo Attempting build for nazimboudeffa-barcode-scanner-cordova-app with Node 20 and JDK 17
Attempting build for nazimboudeffa-barcode-scanner-cordova-app with Node 20 and JDK 17

> docker run --rm -v /home/ubuntu/storage/cordova_assets/extracted/nazimboudeffa-barcode-scanner-cordova-app/barcode-scanner-cordova-app-8ea1390f77b9563d24e44bb0bcdb00b0196603ef:/source:ro -v /home/ubuntu/BachelorsThesis/scripts/cordova/output/nazimboudeffa-barcode-scanner-cordova-app:/output -v /home/ubuntu/.npm:/root/.npm cordova-android:20-jdk17 bash -c set -e
            cp -r /source/. /app
            cd /app
            rm -rf platforms plugins node_modules || true
            rm -rf $GRADLE_USER_HOME || true
            mkdir -p $GRADLE_USER_HOME

            # unset Gradle options
            unset JAVA_OPTS

            # install deps
            if [ -f yarn.lock ]; then
                yarn install --ignore-scripts
            else
                npm install --ignore-scripts
            fi

            # ensure android platform
            cordova platform add android
            cordova prepare android

            # ---- PATCH ROOT GRADLE FILES (CRITICAL FIX) ----
            for f in platforms/android/build.gradle platforms/android/CordovaLib/build.gradle; do
                if [ -f "$f" ]; then
                    # add missing repositories to buildscript + allprojects
                    sed -i '/buildscript[[:space:]]*{/a\
                repositories {\
                    google()\
                    mavenCentral()\
                    maven { url "https://plugins.gradle.org/m2/" }\
                    maven { url "https://maven.aliyun.com/repository/public" }\
                    maven { url "https://jcenter.bintray.com/" }\
                    maven { url "https://jitpack.io" }\
                }\
            ' "$f" || true

                    sed -i '/allprojects[[:space:]]*{/a\
                repositories {\
                    google()\
                    mavenCentral()\
                    maven { url "https://plugins.gradle.org/m2/" }\
                    maven { url "https://maven.aliyun.com/repository/public" }\
                    maven { url "https://jcenter.bintray.com/" }\
                    maven { url "https://jitpack.io" }\
                }\
            ' "$f" || true
                fi
            done

            # ---- FIX versioncompare (very common failure) ----
            grep -RIl 'com.g00fy2:versioncompare:1.3.4' platforms/android 2>/dev/null | \
            xargs -r sed -i 's/com.g00fy2:versioncompare:1.3.4/io.github.g00fy2:versioncompare:1.5.0/g' || true

            # ---- fix versioncompare imports (CRITICAL) ----
            find platforms/android \( -name "*.gradle" -o -name "*.gradle.kts" \) -print0 | \
            xargs -0 sed -i 's/import com\.g00fy2\.versioncompare\.Version/import io.github.g00fy2.versioncompare.Version/g' || true

            # ---- OPTIONAL: remove illegal JVM args ----
            find platforms/android -type f -exec sed -i 's/--illegal-access=permit//g' {} + || true

            # ---- JDK 8 specific patch (minimal, no overwrite!) ----
            if [ \"17\" = "8" ]; then
                # ensure older sdk usage (do NOT overwrite build.gradle anymore)
                find platforms/android -name "build.gradle" -exec \
                    sed -i 's/compileSdkVersion [0-9]\+/compileSdkVersion 30/g' {} \; || true

                find platforms/android -name "build.gradle" -exec \
                    sed -i 's/targetSdkVersion [0-9]\+/targetSdkVersion 30/g' {} \; || true
            fi

            # ---- android sdk path ----
            echo "sdk.dir=$ANDROID_HOME" > platforms/android/local.properties

            # ---- force APK output (suppress AAB generation) ----
            echo "android.bundle.enableAll=false" >> platforms/android/gradle.properties

            # ---- enable ABI splits ----
            if grep -q 'splits' platforms/android/app/build.gradle 2>/dev/null; then
                sed -i 's/enable false/enable true/' platforms/android/app/build.gradle || true
            else
                sed -i '/^android[[:space:]]*{/a\    splits {\n        abi {\n            reset()\n            enable true\n            universalApk false\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\n        }\n    }' platforms/android/app/build.gradle || true
            fi

            # ---- build debug APK ----
            cordova build android --debug --no-interactive --verbose

            cp platforms/android/app/build/outputs/apk/debug/*.apk /output/

            # ---- copy TPL metadata ----
            [ -f config.xml ] && cp config.xml /output/ || true
            [ -f plugins/fetch.json ] && cp plugins/fetch.json /output/ || true
            [ -f plugins/android.json ] && cp plugins/android.json /output/ || true
            [ -f platforms/android/app/build.gradle ] && cp platforms/android/app/build.gradle /output/app-build.gradle || true
            [ -f platforms/android/build.gradle ] && cp platforms/android/build.gradle /output/root-build.gradle || true
            [ -f platforms/android/settings.gradle ] && cp platforms/android/settings.gradle /output/ || true
            [ -f package.json ] && cp package.json /output/ || true
            [ -f package-lock.json ] && cp package-lock.json /output/ || true
            [ -f yarn.lock ] && cp yarn.lock /output/ || true
            [ -f pnpm-lock.yaml ] && cp pnpm-lock.yaml /output/ || true
            mkdir -p /output/plugin_manifests
            find plugins -name "plugin.xml" 2>/dev/null | while read f; do cp "$f" /output/plugin_manifests/$(echo "$f" | tr '/' '_') 2>/dev/null; done || true
            find plugins -name "*.gradle" 2>/dev/null | while read f; do cp "$f" /output/ 2>/dev/null; done || true
            find platforms/android -name "*.gradle" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/ 2>/dev/null; done || true
            mkdir -p /output/libs
            find plugins platforms/android -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
            find plugins platforms/android -name "*.aar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
            find plugins platforms/android -name "*.so" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true
            
npm warn old lockfile
npm warn old lockfile The package-lock.json file was created with an old version of npm,
npm warn old lockfile so supplemental metadata must be fetched from the registry.
npm warn old lockfile
npm warn old lockfile This is a one-time fix-up, please be patient...
npm warn old lockfile
npm warn deprecated cordova-plugin-whitelist@1.3.3: See https://github.com/apache/cordova-plugin-whitelist#deprecation-notice for details.
npm warn deprecated phonegap-plugin-barcodescanner@8.0.0: This package is deprecated, see https://blog.phonegap.com/update-for-customers-using-phonegap-and-phonegap-build-cc701c77502c

added 3 packages, and audited 34 packages in 2s

9 vulnerabilities (4 high, 5 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.
Using cordova-fetch for cordova-android@^7.1.1
Adding android project...
Creating Cordova project for the Android platform:
	Path: platforms/android
	Package: biz.aldaffah.scanner
	Name: QR_Code_Scanner
	Activity: MainActivity
	Android target: android-27
Android project created with cordova-android@7.1.1
Android Studio project detected
Android Studio project detected
Discovered plugin "cordova-plugin-whitelist". Adding it to the project
Installing "cordova-plugin-whitelist" for android

               This plugin is only applicable for versions of cordova-android greater than 4.0. If you have a previous platform version, you do *not* need this plugin since the whitelist will be built in.
          
Adding cordova-plugin-whitelist to package.json
Discovered plugin "phonegap-plugin-barcodescanner". Adding it to the project
Installing "phonegap-plugin-barcodescanner" for android
Subproject Path: CordovaLib
Subproject Path: app
Adding phonegap-plugin-barcodescanner to package.json
Android Studio project detected
No scripts found for hook "before_build".
No scripts found for hook "before_prepare".
Checking for saved platforms that haven't been added to the project
Loaded API for android project /app/platforms/android/cordova/Api.js
Android Studio project detected
Checking for saved plugins that haven't been added to the project
Generating platform-specific config.xml from defaults for android at /app/platforms/android/app/src/main/res/xml/config.xml
Merging project's config.xml into platform-specific android config.xml
Merging and updating files from [www, platforms/android/platform_www] to platforms/android/app/src/main/assets/www
  copy  platforms/android/platform_www/cordova-js-src/android/nativeapiprovider.js platforms/android/app/src/main/assets/www/cordova-js-src/android/nativeapiprovider.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/android/promptbasednativeapi.js platforms/android/app/src/main/assets/www/cordova-js-src/android/promptbasednativeapi.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/exec.js platforms/android/app/src/main/assets/www/cordova-js-src/exec.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/platform.js platforms/android/app/src/main/assets/www/cordova-js-src/platform.js (updated file)
  copy  platforms/android/platform_www/cordova-js-src/plugin/android/app.js platforms/android/app/src/main/assets/www/cordova-js-src/plugin/android/app.js (updated file)
  copy  platforms/android/platform_www/cordova.js platforms/android/app/src/main/assets/www/cordova.js (updated file)
  copy  platforms/android/platform_www/cordova_plugins.js platforms/android/app/src/main/assets/www/cordova_plugins.js (updated file)
  copy  platforms/android/platform_www/plugins/phonegap-plugin-barcodescanner/www/barcodescanner.js platforms/android/app/src/main/assets/www/plugins/phonegap-plugin-barcodescanner/www/barcodescanner.js (updated file)
Wrote out android application name "QR Code Scanner" to /app/platforms/android/app/src/main/res/values/strings.xml
android-versionCode not found in config.xml. Generating a code based on version in config.xml (1.0.3): 10003
Wrote out Android package name "biz.aldaffah.scanner" to /app/platforms/android/app/src/main/java/biz/aldaffah/scanner/MainActivity.java
This app does not have launcher icons defined
This app does not have splash screens defined
This app does not have additional resource files defined
Prepared android project successfully
No scripts found for hook "after_prepare".
No scripts found for hook "before_compile".
ANDROID_HOME=/opt/android
JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
Requirements check failed for JDK 1.8
CordovaError: Requirements check failed for JDK 1.8
    at /app/platforms/android/cordova/lib/check_reqs.js:362:19
    at _fulfilled (/app/platforms/android/cordova/node_modules/q/q.js:834:54)
    at /app/platforms/android/cordova/node_modules/q/q.js:863:30
    at Promise.promise.promiseDispatch (/app/platforms/android/cordova/node_modules/q/q.js:796:13)
    at /app/platforms/android/cordova/node_modules/q/q.js:604:44
    at runSingle (/app/platforms/android/cordova/node_modules/q/q.js:137:13)
    at flush (/app/platforms/android/cordova/node_modules/q/q.js:125:13)
    at process.processTicksAndRejections (node:internal/process/task_queues:77:11)
cp: cannot stat 'platforms/android/app/build/outputs/apk/debug/*.apk': No such file or directory

> echo Build failed with Node 20 and JDK 17: Command '['docker', 'run', '--rm', '-v', '/home/ubuntu/storage/cordova_assets/extracted/nazimboudeffa-barcode-scanner-cordova-app/barcode-scanner-cordova-app-8ea1390f77b9563d24e44bb0bcdb00b0196603ef:/source:ro', '-v', '/home/ubuntu/BachelorsThesis/scripts/cordova/output/nazimboudeffa-barcode-scanner-cordova-app:/output', '-v', '/home/ubuntu/.npm:/root/.npm', 'cordova-android:20-jdk17', 'bash', '-c', 'set -e\n            cp -r /source/. /app\n            cd /app\n            rm -rf platforms plugins node_modules || true\n            rm -rf $GRADLE_USER_HOME || true\n            mkdir -p $GRADLE_USER_HOME\n\n            # unset Gradle options\n            unset JAVA_OPTS\n\n            # install deps\n            if [ -f yarn.lock ]; then\n                yarn install --ignore-scripts\n            else\n                npm install --ignore-scripts\n            fi\n\n            # ensure android platform\n            cordova platform add android\n            cordova prepare android\n\n            # ---- PATCH ROOT GRADLE FILES (CRITICAL FIX) ----\n            for f in platforms/android/build.gradle platforms/android/CordovaLib/build.gradle; do\n                if [ -f "$f" ]; then\n                    # add missing repositories to buildscript + allprojects\n                    sed -i \'/buildscript[[:space:]]*{/a\\\n                repositories {\\\n                    google()\\\n                    mavenCentral()\\\n                    maven { url "https://plugins.gradle.org/m2/" }\\\n                    maven { url "https://maven.aliyun.com/repository/public" }\\\n                    maven { url "https://jcenter.bintray.com/" }\\\n                    maven { url "https://jitpack.io" }\\\n                }\\\n            \' "$f" || true\n\n                    sed -i \'/allprojects[[:space:]]*{/a\\\n                repositories {\\\n                    google()\\\n                    mavenCentral()\\\n                    maven { url "https://plugins.gradle.org/m2/" }\\\n                    maven { url "https://maven.aliyun.com/repository/public" }\\\n                    maven { url "https://jcenter.bintray.com/" }\\\n                    maven { url "https://jitpack.io" }\\\n                }\\\n            \' "$f" || true\n                fi\n            done\n\n            # ---- FIX versioncompare (very common failure) ----\n            grep -RIl \'com.g00fy2:versioncompare:1.3.4\' platforms/android 2>/dev/null | \\\n            xargs -r sed -i \'s/com.g00fy2:versioncompare:1.3.4/io.github.g00fy2:versioncompare:1.5.0/g\' || true\n\n            # ---- fix versioncompare imports (CRITICAL) ----\n            find platforms/android \\( -name "*.gradle" -o -name "*.gradle.kts" \\) -print0 | \\\n            xargs -0 sed -i \'s/import com\\.g00fy2\\.versioncompare\\.Version/import io.github.g00fy2.versioncompare.Version/g\' || true\n\n            # ---- OPTIONAL: remove illegal JVM args ----\n            find platforms/android -type f -exec sed -i \'s/--illegal-access=permit//g\' {} + || true\n\n            # ---- JDK 8 specific patch (minimal, no overwrite!) ----\n            if [ \\"17\\" = "8" ]; then\n                # ensure older sdk usage (do NOT overwrite build.gradle anymore)\n                find platforms/android -name "build.gradle" -exec \\\n                    sed -i \'s/compileSdkVersion [0-9]\\+/compileSdkVersion 30/g\' {} \\; || true\n\n                find platforms/android -name "build.gradle" -exec \\\n                    sed -i \'s/targetSdkVersion [0-9]\\+/targetSdkVersion 30/g\' {} \\; || true\n            fi\n\n            # ---- android sdk path ----\n            echo "sdk.dir=$ANDROID_HOME" > platforms/android/local.properties\n\n            # ---- force APK output (suppress AAB generation) ----\n            echo "android.bundle.enableAll=false" >> platforms/android/gradle.properties\n\n            # ---- enable ABI splits ----\n            if grep -q \'splits\' platforms/android/app/build.gradle 2>/dev/null; then\n                sed -i \'s/enable false/enable true/\' platforms/android/app/build.gradle || true\n            else\n                sed -i \'/^android[[:space:]]*{/a\\    splits {\\n        abi {\\n            reset()\\n            enable true\\n            universalApk false\\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\\n        }\\n    }\' platforms/android/app/build.gradle || true\n            fi\n\n            # ---- build debug APK ----\n            cordova build android --debug --no-interactive --verbose\n\n            cp platforms/android/app/build/outputs/apk/debug/*.apk /output/\n\n            # ---- copy TPL metadata ----\n            [ -f config.xml ] && cp config.xml /output/ || true\n            [ -f plugins/fetch.json ] && cp plugins/fetch.json /output/ || true\n            [ -f plugins/android.json ] && cp plugins/android.json /output/ || true\n            [ -f platforms/android/app/build.gradle ] && cp platforms/android/app/build.gradle /output/app-build.gradle || true\n            [ -f platforms/android/build.gradle ] && cp platforms/android/build.gradle /output/root-build.gradle || true\n            [ -f platforms/android/settings.gradle ] && cp platforms/android/settings.gradle /output/ || true\n            [ -f package.json ] && cp package.json /output/ || true\n            [ -f package-lock.json ] && cp package-lock.json /output/ || true\n            [ -f yarn.lock ] && cp yarn.lock /output/ || true\n            [ -f pnpm-lock.yaml ] && cp pnpm-lock.yaml /output/ || true\n            mkdir -p /output/plugin_manifests\n            find plugins -name "plugin.xml" 2>/dev/null | while read f; do cp "$f" /output/plugin_manifests/$(echo "$f" | tr \'/\' \'_\') 2>/dev/null; done || true\n            find plugins -name "*.gradle" 2>/dev/null | while read f; do cp "$f" /output/ 2>/dev/null; done || true\n            find platforms/android -name "*.gradle" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/ 2>/dev/null; done || true\n            mkdir -p /output/libs\n            find plugins platforms/android -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true\n            find plugins platforms/android -name "*.aar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true\n            find plugins platforms/android -name "*.so" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true\n            ']' returned non-zero exit status 1.
Build failed with Node 20 and JDK 17: Command '['docker', 'run', '--rm', '-v', '/home/ubuntu/storage/cordova_assets/extracted/nazimboudeffa-barcode-scanner-cordova-app/barcode-scanner-cordova-app-8ea1390f77b9563d24e44bb0bcdb00b0196603ef:/source:ro', '-v', '/home/ubuntu/BachelorsThesis/scripts/cordova/output/nazimboudeffa-barcode-scanner-cordova-app:/output', '-v', '/home/ubuntu/.npm:/root/.npm', 'cordova-android:20-jdk17', 'bash', '-c', 'set -e\n            cp -r /source/. /app\n            cd /app\n            rm -rf platforms plugins node_modules || true\n            rm -rf $GRADLE_USER_HOME || true\n            mkdir -p $GRADLE_USER_HOME\n\n            # unset Gradle options\n            unset JAVA_OPTS\n\n            # install deps\n            if [ -f yarn.lock ]; then\n                yarn install --ignore-scripts\n            else\n                npm install --ignore-scripts\n            fi\n\n            # ensure android platform\n            cordova platform add android\n            cordova prepare android\n\n            # ---- PATCH ROOT GRADLE FILES (CRITICAL FIX) ----\n            for f in platforms/android/build.gradle platforms/android/CordovaLib/build.gradle; do\n                if [ -f "$f" ]; then\n                    # add missing repositories to buildscript + allprojects\n                    sed -i \'/buildscript[[:space:]]*{/a\\\n                repositories {\\\n                    google()\\\n                    mavenCentral()\\\n                    maven { url "https://plugins.gradle.org/m2/" }\\\n                    maven { url "https://maven.aliyun.com/repository/public" }\\\n                    maven { url "https://jcenter.bintray.com/" }\\\n                    maven { url "https://jitpack.io" }\\\n                }\\\n            \' "$f" || true\n\n                    sed -i \'/allprojects[[:space:]]*{/a\\\n                repositories {\\\n                    google()\\\n                    mavenCentral()\\\n                    maven { url "https://plugins.gradle.org/m2/" }\\\n                    maven { url "https://maven.aliyun.com/repository/public" }\\\n                    maven { url "https://jcenter.bintray.com/" }\\\n                    maven { url "https://jitpack.io" }\\\n                }\\\n            \' "$f" || true\n                fi\n            done\n\n            # ---- FIX versioncompare (very common failure) ----\n            grep -RIl \'com.g00fy2:versioncompare:1.3.4\' platforms/android 2>/dev/null | \\\n            xargs -r sed -i \'s/com.g00fy2:versioncompare:1.3.4/io.github.g00fy2:versioncompare:1.5.0/g\' || true\n\n            # ---- fix versioncompare imports (CRITICAL) ----\n            find platforms/android \\( -name "*.gradle" -o -name "*.gradle.kts" \\) -print0 | \\\n            xargs -0 sed -i \'s/import com\\.g00fy2\\.versioncompare\\.Version/import io.github.g00fy2.versioncompare.Version/g\' || true\n\n            # ---- OPTIONAL: remove illegal JVM args ----\n            find platforms/android -type f -exec sed -i \'s/--illegal-access=permit//g\' {} + || true\n\n            # ---- JDK 8 specific patch (minimal, no overwrite!) ----\n            if [ \\"17\\" = "8" ]; then\n                # ensure older sdk usage (do NOT overwrite build.gradle anymore)\n                find platforms/android -name "build.gradle" -exec \\\n                    sed -i \'s/compileSdkVersion [0-9]\\+/compileSdkVersion 30/g\' {} \\; || true\n\n                find platforms/android -name "build.gradle" -exec \\\n                    sed -i \'s/targetSdkVersion [0-9]\\+/targetSdkVersion 30/g\' {} \\; || true\n            fi\n\n            # ---- android sdk path ----\n            echo "sdk.dir=$ANDROID_HOME" > platforms/android/local.properties\n\n            # ---- force APK output (suppress AAB generation) ----\n            echo "android.bundle.enableAll=false" >> platforms/android/gradle.properties\n\n            # ---- enable ABI splits ----\n            if grep -q \'splits\' platforms/android/app/build.gradle 2>/dev/null; then\n                sed -i \'s/enable false/enable true/\' platforms/android/app/build.gradle || true\n            else\n                sed -i \'/^android[[:space:]]*{/a\\    splits {\\n        abi {\\n            reset()\\n            enable true\\n            universalApk false\\n            include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"\\n        }\\n    }\' platforms/android/app/build.gradle || true\n            fi\n\n            # ---- build debug APK ----\n            cordova build android --debug --no-interactive --verbose\n\n            cp platforms/android/app/build/outputs/apk/debug/*.apk /output/\n\n            # ---- copy TPL metadata ----\n            [ -f config.xml ] && cp config.xml /output/ || true\n            [ -f plugins/fetch.json ] && cp plugins/fetch.json /output/ || true\n            [ -f plugins/android.json ] && cp plugins/android.json /output/ || true\n            [ -f platforms/android/app/build.gradle ] && cp platforms/android/app/build.gradle /output/app-build.gradle || true\n            [ -f platforms/android/build.gradle ] && cp platforms/android/build.gradle /output/root-build.gradle || true\n            [ -f platforms/android/settings.gradle ] && cp platforms/android/settings.gradle /output/ || true\n            [ -f package.json ] && cp package.json /output/ || true\n            [ -f package-lock.json ] && cp package-lock.json /output/ || true\n            [ -f yarn.lock ] && cp yarn.lock /output/ || true\n            [ -f pnpm-lock.yaml ] && cp pnpm-lock.yaml /output/ || true\n            mkdir -p /output/plugin_manifests\n            find plugins -name "plugin.xml" 2>/dev/null | while read f; do cp "$f" /output/plugin_manifests/$(echo "$f" | tr \'/\' \'_\') 2>/dev/null; done || true\n            find plugins -name "*.gradle" 2>/dev/null | while read f; do cp "$f" /output/ 2>/dev/null; done || true\n            find platforms/android -name "*.gradle" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/ 2>/dev/null; done || true\n            mkdir -p /output/libs\n            find plugins platforms/android -name "*.jar" -not -name "gradle-wrapper.jar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true\n            find plugins platforms/android -name "*.aar" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true\n            find plugins platforms/android -name "*.so" 2>/dev/null | grep -v "/build/" | while read f; do cp "$f" /output/libs/ 2>/dev/null; done || true\n            ']' returned non-zero exit status 1.
