From a3fb67dd92d04ae8d95ea19d5563e2e277a3fa22 Mon Sep 17 00:00:00 2001 From: Paul Duffin Date: Wed, 20 May 2020 14:20:02 +0100 Subject: [PATCH] Retry: "java_sdk_library: Do not expose stubs implementation jar" The stubs header jar is optimized for use as a dependency for others to use. It only changes if there is a significant difference in the externals of the classes, i.e. anything that a library being compiled against depends upon. So changes to implementations of method or the addition/removal of private methods, fields will have no impact. As there is no benefit in returning the implementation of the stubs jar this change removes it. The implementation is still used when taking a snapshot as the header jar is an internal build artefact that is not suitable for long term snapshot. Bug: 155164730 Test: m droid (cherry picked from commit 23970f4285f2ba70b5a35a56a6dffa9afc1f37d9) Change-Id: I8277ec643837514d74cb57ad4f236ceb1f5c6c5b --- java/sdk_library.go | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/java/sdk_library.go b/java/sdk_library.go index a95da9f02..b215a76f7 100644 --- a/java/sdk_library.go +++ b/java/sdk_library.go @@ -694,7 +694,7 @@ func (c *commonToSdkLibraryAndImport) findClosestScopePath(scope *apiScope) *sco return nil } -func (c *commonToSdkLibraryAndImport) sdkJarsCommon(ctx android.BaseModuleContext, sdkVersion sdkSpec, headerJars bool) android.Paths { +func (c *commonToSdkLibraryAndImport) selectHeaderJarsForSdkVersion(ctx android.BaseModuleContext, sdkVersion sdkSpec) android.Paths { // If a specific numeric version has been requested then use prebuilt versions of the sdk. if sdkVersion.version.isNumbered() { @@ -725,11 +725,7 @@ func (c *commonToSdkLibraryAndImport) sdkJarsCommon(ctx android.BaseModuleContex return nil } - if headerJars { - return paths.stubsHeaderPath - } else { - return paths.stubsImplPath - } + return paths.stubsHeaderPath } type SdkLibrary struct { @@ -1205,7 +1201,7 @@ func (module *SdkLibrary) sdkJars(ctx android.BaseModuleContext, sdkVersion sdkS return module.HeaderJars() } - return module.sdkJarsCommon(ctx, sdkVersion, headerJars) + return module.selectHeaderJarsForSdkVersion(ctx, sdkVersion) } // to satisfy SdkLibraryDependency interface @@ -1644,11 +1640,7 @@ func (module *sdkLibraryImport) GenerateAndroidBuildActions(ctx android.ModuleCo } func (module *sdkLibraryImport) sdkJars(ctx android.BaseModuleContext, sdkVersion sdkSpec) android.Paths { - - // The java_sdk_library_import can only ever give back header jars as it does not - // have an implementation jar. - headerJars := true - return module.sdkJarsCommon(ctx, sdkVersion, headerJars) + return module.selectHeaderJarsForSdkVersion(ctx, sdkVersion) } // to satisfy SdkLibraryDependency interface