Companion and Application build failed issues after adding some Google-Services
& Androidx Libraries
Feb 22, 2025 11:40:51 PM com.google.appinventor.buildserver.Compiler call[RunD8] Task errored
[java]
[java] SEVERE: Error running task class com.google.appinventor.buildserver.tasks.android.RunD8
[java] java.lang.reflect.InvocationTargetException
[java] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[java] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[java] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[java] at com.google.appinventor.buildserver.Compiler.call(Compiler.java:169)
[java] at com.google.appinventor.buildserver.Compiler.call(Compiler.java:33)
[java] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[java] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
[java] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
[java] at java.base/java.lang.Thread.run(Thread.java:834)
[java] Caused by: java.lang.NullPointerException
[java] at java.base/java.io.File.(File.java:278)
[java] at com.google.appinventor.buildserver.tasks.android.RunD8.execute(RunD8.java:69)
[java] at com.google.appinventor.buildserver.tasks.android.RunD8.execute(RunD8.java:32)
[java] ... 10 more
[java]
BUILD FAILED
here i will mention full logs
Build Logs.txt (112.3 KB)
@ewpatton Sir look at here I'm trying to build in Window 11 & Java 11
Usually a NPE at that line indicates you forgot to include an entry to copy the library over to the component deps directory. What changes have you made to components/build.xml?
@UsesLibraries(libraries = "play-services-measurement.jar, play-services-measurement.aar, play-services-measurement-base.jar, play-services-measurement-sdk-api.jar, play-services-base.jar, play-services-base.aar, play-services-basement.jar, play-services-basement.aar, work-runtime.jar, work-runtime.aar, room-common.jar, room-runtime.aar, room-runtime.jar, sqlite.aar, sqlite.jar, sqlite-framework.aar, sqlite-framework.jar, browser.aar, browser.jar, guava.jar")
<copy toFile="${public.deps.dir}/play-services-appset.jar" file="${lib.dir}/google/Play-Services/play-services-appset-16.1.0.jar" />
<copy toFile="${public.deps.dir}/play-services-auth.jar" file="${lib.dir}/google/Play-Services/play-services-auth-21.3.0.jar" />
<copy toFile="${public.deps.dir}/play-services-auth.aar" file="${lib.dir}/google/Play-Services/play-services-auth-21.3.0.aar" />
<copy toFile="${public.deps.dir}/play-services-auth-api-phone.jar" file="${lib.dir}/google/Play-Services/play-services-auth-api-phone-18.1.0.jar" />
<copy toFile="${public.deps.dir}/play-services-auth-base.jar" file="${lib.dir}/google/Play-Services/play-services-auth-base-18.1.0.jar" />
<copy toFile="${public.deps.dir}/play-services-base.jar" file="${lib.dir}/google/Play-Services/play-services-base-18.5.0.jar" />
<copy toFile="${public.deps.dir}/play-services-base.aar" file="${lib.dir}/google/Play-Services/play-services-base-18.5.0.aar" />
<copy toFile="${public.deps.dir}/play-services-basement.jar" file="${lib.dir}/google/Play-Services/play-services-basement-18.5.0.jar" />
<copy toFile="${public.deps.dir}/play-services-basement.aar" file="${lib.dir}/google/Play-Services/play-services-basement-18.5.0.aar" />
<copy toFile="${public.deps.dir}/play-services-fido.jar" file="${lib.dir}/google/Play-Services/play-services-fido-21.1.0.jar" />
<copy toFile="${public.deps.dir}/play-services-location.jar" file="${lib.dir}/google/Play-Services/play-services-location-21.3.0.jar" />
<copy toFile="${public.deps.dir}/play-services-maps.jar" file="${lib.dir}/google/Play-Services/play-services-maps-19.0.0.jar" />
<copy toFile="${public.deps.dir}/play-services-maps.aar" file="${lib.dir}/google/Play-Services/play-services-maps-19.0.0.aar" />
<copy toFile="${public.deps.dir}/play-services-measurement-base.jar" file="${lib.dir}/google/Play-Services/play-services-measurement-base-22.2.0.jar" />
<copy toFile="${public.deps.dir}/play-services-measurement-sdk-api.jar" file="${lib.dir}/google/Play-Services/play-services-measurement-sdk-api-22.2.0.jar" />
<copy toFile="${public.deps.dir}/play-services-safetynet.jar" file="${lib.dir}/google/Play-Services/play-services-safetynet-18.1.0.jar" />
<copy toFile="${public.deps.dir}/play-services-stats.jar" file="${lib.dir}/google/Play-Services/play-services-stats-17.1.0.jar" />
<copy toFile="${public.deps.dir}/play-services-tasks.jar" file="${lib.dir}/google/Play-Services/play-services-tasks-18.2.0.jar" />
<copy toFile="${public.deps.dir}/play-services-measurement.jar" file="${lib.dir}/google/Play-Services/play-services-measurement-22.2.0.jar" />
<copy toFile="${public.deps.dir}/play-services-measurement.aar" file="${lib.dir}/google/Play-Services/play-services-measurement-22.2.0.aar" />
<!-- Androidx Section -->
<copy toFile="${public.deps.dir}/work-runtime.aar" file="${lib.dir}/Androidx/work-runtime-2.10.0.aar" />
<copy toFile="${public.deps.dir}/work-runtime.jar" file="${lib.dir}/Androidx/work-runtime-2.10.0.jar" />
<copy toFile="${public.deps.dir}/sqlite.jar" file="${lib.dir}/Androidx/sqlite-2.4.0.jar" />
<copy toFile="${public.deps.dir}/sqlite.aar" file="${lib.dir}/Androidx/sqlite-2.4.0.aar" />
<copy toFile="${public.deps.dir}/sqlite-framework.jar" file="${lib.dir}/Androidx/sqlite-framework-2.4.0.jar" />
<copy toFile="${public.deps.dir}/sqlite-framework.aar" file="${lib.dir}/Androidx/sqlite-framework-2.4.0.aar" />
<copy toFile="${public.deps.dir}/room-runtime.jar" file="${lib.dir}/Androidx/room-runtime-2.6.1.jar" />
<copy toFile="${public.deps.dir}/room-runtime.aar" file="${lib.dir}/Androidx/room-runtime-2.6.1.aar" />
<copy toFile="${public.deps.dir}/room-common.jar" file="${lib.dir}/Androidx/room-common-2.6.1.jar" />
<copy toFile="${public.deps.dir}/browser.jar" file="${lib.dir}/Androidx/browser-1.8.0.jar" />
<copy toFile="${public.deps.dir}/browser.aar" file="${lib.dir}/Androidx/browser-1.8.0.aar" />
look here
[java] Picked up _JAVA_OPTIONS: -Xmx16gfailed
[java] Error: Cannot fit requested classes in the main-dex file (# methods: 70155 > 65536)
[java] Compilation
[java] Exception in thread "main" java.lang.RuntimeException: com.android.tools.r8.CompilationFailedException: Compilation failed to complete, position: null
[java] at com.android.tools.r8.utils.R0.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:126)
[java] at com.android.tools.r8.D8.main(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:5)
[java] Caused by: com.android.tools.r8.CompilationFailedException: Compilation failed to complete, position: null
[java] at Version.fakeStackEntry(Version_8.2.2-dev.java:0)
[java] at com.android.tools.r8.M.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:5)
[java] at com.android.tools.r8.utils.R0.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:81)
[java] at com.android.tools.r8.utils.R0.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:32)
[java] at com.android.tools.r8.utils.R0.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:31)
[java] at com.android.tools.r8.utils.R0.b(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:2)
[java] at com.android.tools.r8.D8.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:26)
[java] at com.android.tools.r8.D8.b(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:13)
[java] at com.android.tools.r8.D8.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:24)
[java] at com.android.tools.r8.utils.R0.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:113)
[java] ... 1 more
[java] Caused by: com.android.tools.r8.utils.b: Cannot fit requested classes in the main-dex file (# methods: 70155 > 65536)
[java] at com.android.tools.r8.utils.O2.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:21)
[java] at com.android.tools.r8.utils.O2.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:26)
[java] at com.android.tools.r8.dex.h0.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:33)
[java] at com.android.tools.r8.dex.j0.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:6)
[java] at com.android.tools.r8.dex.k.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:49)
[java] at com.android.tools.r8.dex.k.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:155)
[java] at com.android.tools.r8.D8.d(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:153)
[java] at com.android.tools.r8.D8.c(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:1)
[java] at com.android.tools.r8.utils.R0.a(R8_8.2.2-dev_53a55043254cc5be8ef500331bba25d1b4ca4bc2cd66c555d4358bf672a1f10a:28)
[java] ... 6 more
[java] [RunD8] ERROR: d8 failed.
[java] [RunD8] Task errored in 145.031 seconds
BUILD FAILED
C:\Users\ABC\Appcraft-Latest\appinventor\build.xml:90: The following error occurred while executing this line:
C:\Users\ABC\Appcraft-Latest\appinventor\buildserver\build.xml:204: Java returned: 1
Now @ewpatton how to deal with this bug and why it's happened in D8 compiler.
Full Build Logs.txt (237.0 KB)
It sounds like you are trying to stuff way too many files into the default JAR set. You really should clean up your JAR list to only those things needed to instantiate Screen1.
I'm having difficulty adding the necessary JAR files for a Firebase component service to my project. I think I might be adding too many JARs at once, or perhaps I'm doing it incorrectly. I need to understand how to properly add these required JARs and how to organize them efficiently.
Is this error happening when building the companion or when compiling a project?
When building the companion & large applications too
@ewpatton sir help me in the matter