Revert "Avoid duplicate classes in boot path."

This reverts commit efba4176d8923bde102903035c07c6a6e3388f49.

Reason for revert: DroidMonitor: Potential culprit for Bug b/310080905 - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.

Bug: 310080905
Change-Id: Id7d6c1fbc6e58b08c14ad52b74a10adbff8abc4e
diff --git a/AconfigFlags.bp b/AconfigFlags.bp
index a65a76b..3a772e1 100644
--- a/AconfigFlags.bp
+++ b/AconfigFlags.bp
@@ -58,6 +58,7 @@
     ":android.service.autofill.flags-aconfig-java{.generated_srcjars}",
     ":com.android.net.flags-aconfig-java{.generated_srcjars}",
     ":device_policy_aconfig_flags_lib{.generated_srcjars}",
+    ":service-jobscheduler-deviceidle.flags-aconfig-java{.generated_srcjars}",
     ":surfaceflinger_flags_java_lib{.generated_srcjars}",
     ":android.view.contentcapture.flags-aconfig-java{.generated_srcjars}",
     ":android.hardware.usb.flags-aconfig-java{.generated_srcjars}",
diff --git a/apex/jobscheduler/service/Android.bp b/apex/jobscheduler/service/Android.bp
index 06518c4..887f7fe 100644
--- a/apex/jobscheduler/service/Android.bp
+++ b/apex/jobscheduler/service/Android.bp
@@ -13,6 +13,10 @@
     name: "service-jobscheduler",
     installable: true,
 
+    defaults: [
+        "service-jobscheduler-aconfig-libraries",
+    ],
+
     srcs: [
         "java/**/*.java",
         ":framework-jobscheduler-shared-srcs",
@@ -23,8 +27,6 @@
         "app-compat-annotations",
         "framework",
         "services.core",
-        "service-jobscheduler-deviceidle.flags-aconfig-java",
-        "service-jobscheduler-job.flags-aconfig-java",
         "unsupportedappusage",
     ],
 
diff --git a/apex/jobscheduler/service/aconfig/Android.bp b/apex/jobscheduler/service/aconfig/Android.bp
index 3f4ab50..7d8a363 100644
--- a/apex/jobscheduler/service/aconfig/Android.bp
+++ b/apex/jobscheduler/service/aconfig/Android.bp
@@ -29,3 +29,18 @@
     defaults: ["framework-minus-apex-aconfig-java-defaults"],
     visibility: ["//frameworks/base:__subpackages__"],
 }
+
+service_jobscheduler_aconfig_srcjars = [
+    ":service-jobscheduler-deviceidle.flags-aconfig-java{.generated_srcjars}",
+    ":service-jobscheduler-job.flags-aconfig-java{.generated_srcjars}",
+]
+
+// Aconfig declarations and libraries for the core framework
+java_defaults {
+    name: "service-jobscheduler-aconfig-libraries",
+    // Add java_aconfig_libraries to here to add them to the core framework
+    srcs: service_jobscheduler_aconfig_srcjars,
+    // Add aconfig-annotations-lib as a dependency for the optimization
+    libs: ["aconfig-annotations-lib"],
+    visibility: ["//frameworks/base:__subpackages__"],
+}
diff --git a/services/core/Android.bp b/services/core/Android.bp
index 09fe268..a14f3fe 100644
--- a/services/core/Android.bp
+++ b/services/core/Android.bp
@@ -141,7 +141,6 @@
         "service-rkp.stubs.system_server",
         "service-sdksandbox.stubs.system_server",
         "device_policy_aconfig_flags_lib",
-        "service-jobscheduler-deviceidle.flags-aconfig-java",
     ],
     plugins: ["ImmutabilityAnnotationProcessor"],
 
diff --git a/services/tests/mockingservicestests/Android.bp b/services/tests/mockingservicestests/Android.bp
index 45cf66d..063af57 100644
--- a/services/tests/mockingservicestests/Android.bp
+++ b/services/tests/mockingservicestests/Android.bp
@@ -56,7 +56,6 @@
         "platform-test-annotations",
         "service-blobstore",
         "service-jobscheduler",
-        "service-jobscheduler-job.flags-aconfig-java",
         "service-permission.impl",
         "service-sdksandbox.impl",
         "services.backup",
diff --git a/services/tests/powerservicetests/Android.bp b/services/tests/powerservicetests/Android.bp
index 82ac4c6..8d455fe 100644
--- a/services/tests/powerservicetests/Android.bp
+++ b/services/tests/powerservicetests/Android.bp
@@ -15,7 +15,6 @@
         "frameworks-base-testutils",
         "platform-compat-test-rules",
         "platform-test-annotations",
-        "service-jobscheduler-deviceidle.flags-aconfig-java",
         "services.core",
         "servicestests-utils",
         "testables",