diff --git a/java/sdk_library.go b/java/sdk_library.go index b1ddde093..d1620af9f 100644 --- a/java/sdk_library.go +++ b/java/sdk_library.go @@ -1633,7 +1633,7 @@ func (module *SdkLibrary) createStubsLibrary(mctx android.DefaultableHookContext }{} props.Name = proptools.StringPtr(module.sourceStubLibraryModuleName(apiScope)) - props.Visibility = childModuleVisibility(module.sdkLibraryProperties.Stubs_library_visibility) + props.Visibility = []string{"//visibility:override", "//visibility:private"} // sources are generated from the droiddoc props.Srcs = []string{":" + module.stubsSourceModuleName(apiScope)} sdkVersion := module.sdkVersionForStubsLibrary(mctx, apiScope) @@ -1829,7 +1829,7 @@ func (module *SdkLibrary) createApiLibrary(mctx android.DefaultableHookContext, }{} props.Name = proptools.StringPtr(module.apiLibraryModuleName(apiScope)) - props.Visibility = childModuleVisibility(module.sdkLibraryProperties.Stubs_library_visibility) + props.Visibility = []string{"//visibility:override", "//visibility:private"} apiContributions := []string{} diff --git a/java/sdk_library_test.go b/java/sdk_library_test.go index 118f8b68c..868d697ce 100644 --- a/java/sdk_library_test.go +++ b/java/sdk_library_test.go @@ -1474,3 +1474,32 @@ func TestJavaSdkLibrary_ApiLibrary(t *testing.T) { android.AssertStringEquals(t, "Module expected to contain full api surface api library", c.fullApiSurfaceStub, *m.properties.Full_api_surface_stub) } } + +func TestStaticDepStubLibrariesVisibility(t *testing.T) { + android.GroupFixturePreparers( + prepareForJavaTest, + PrepareForTestWithJavaSdkLibraryFiles, + FixtureWithLastReleaseApis("foo"), + android.FixtureMergeMockFs( + map[string][]byte{ + "A.java": nil, + "dir/Android.bp": []byte( + ` + java_library { + name: "bar", + srcs: ["A.java"], + libs: ["foo.stubs.from-source"], + } + `), + "dir/A.java": nil, + }, + ).ExtendWithErrorHandler( + android.FixtureExpectsAtLeastOneErrorMatchingPattern( + `module "bar" variant "android_common": depends on //.:foo.stubs.from-source which is not visible to this module`)), + ).RunTestWithBp(t, ` + java_sdk_library { + name: "foo", + srcs: ["A.java"], + } + `) +}