-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Closed
Labels
triage meI really want to be triaged.I really want to be triaged.type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.Error or flaw in code with unintended results or allowing sub-optimal usage patterns.
Description
Environment details
- OS: OSX High Sierra
- Java version: 1.8
- google-cloud-java version(s): v0.77.0, v0.78.0
There's a new shading bug in the google-cloud-nio-0.77.0-alpha-shaded.jar which makes it unusable.
The changes in #4305 fixed the shading of several service providers but accidentally shaded the META-INF/services/java.nio.file.spi.FileSystemProvider file as well.
This makes the jar unusable because the FileSystemProvider can't be instantiated. It needs to be excluded from the shading.
Stacktrace
An example stack trace.
java.util.ServiceConfigurationError: java.nio.file.spi.FileSystemProvider: Provider shaded.cloud_nio.com.shaded.cloud_nio.google.cloud.storage.contrib.nio.CloudStorageFileSystemProvider not found
at java.util.ServiceLoader.fail(ServiceLoader.java:239)
at java.util.ServiceLoader.access$300(ServiceLoader.java:185)
at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:372)
at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404)
at java.util.ServiceLoader$1.next(ServiceLoader.java:480)
at java.nio.file.spi.FileSystemProvider.loadInstalledProviders(FileSystemProvider.java:119)
at java.nio.file.spi.FileSystemProvider.access$000(FileSystemProvider.java:77)
at java.nio.file.spi.FileSystemProvider$1.run(FileSystemProvider.java:169)
at java.nio.file.spi.FileSystemProvider$1.run(FileSystemProvider.java:166)
at java.security.AccessController.doPrivileged(Native Method)
at java.nio.file.spi.FileSystemProvider.installedProviders(FileSystemProvider.java:166)
at com.google.common.jimfs.JimfsFileSystems.getSystemJimfsProvider(JimfsFileSystems.java:45)
at com.google.common.jimfs.JimfsFileSystems.<clinit>(JimfsFileSystems.java:42)
at com.google.common.jimfs.Jimfs.newFileSystem(Jimfs.java:145)
at com.google.common.jimfs.Jimfs.newFileSystem(Jimfs.java:131)
at com.google.common.jimfs.Jimfs.newFileSystem(Jimfs.java:117)
at org.broadinstitute.hellbender.utils.io.IOUtilsUnitTest.setUp(IOUtilsUnitTest.java:37)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:108)
at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:523)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:224)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:146)
at org.testng.internal.TestMethodWorker.invokeBeforeClassMethods(TestMethodWorker.java:166)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:105)
at org.testng.TestRunner.privateRun(TestRunner.java:744)
at org.testng.TestRunner.run(TestRunner.java:602)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:380)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:375)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:340)
at org.testng.SuiteRunner.run(SuiteRunner.java:289)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1301)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1226)
at org.testng.TestNG.runSuites(TestNG.java:1144)
at org.testng.TestNG.run(TestNG.java:1115)
at org.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:73)
at org.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:123)
Metadata
Metadata
Assignees
Labels
triage meI really want to be triaged.I really want to be triaged.type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.Error or flaw in code with unintended results or allowing sub-optimal usage patterns.