druid-google-extensions, ClassNotFoundException: PrefetchableTextFilesFirehoseFactory

Hey Guys

I am pretty new to Druid and I might be missing out on something very basic here. I have added druid-google-extensions to my Druid install using the following:

java \

-cp “lib/*” \

-Ddruid.extensions.directory=“extensions” \

-Ddruid.extensions.hadoopDependenciesDir=“hadoop-dependencies” \

io.druid.cli.Main tools pull-deps \

–no-default-hadoop \

-c “io.druid.extensions.contrib:druid-google-extensions:0.10.1”

I have druid-google-extensions in my druid.extensions.loadList. When I start Druid, the following errors are thrown out:

… 18 more

at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

at java.lang.ClassLoader.loadClass(ClassLoader.java:424)

at java.net.URLClassLoader.findClass(URLClassLoader.java:381)

Caused by: java.lang.ClassNotFoundException: io.druid.data.input.impl.PrefetchableTextFilesFirehoseFactory

at io.druid.cli.Main.main(Main.java:116)

at io.druid.cli.ServerRunnable.run(ServerRunnable.java:49)

at io.druid.cli.GuiceRunnable.makeInjector(GuiceRunnable.java:62)

at io.druid.initialization.Initialization.makeInjectorWithModules(Initialization.java:398)

at io.druid.initialization.Initialization$ModuleList.addModule(Initialization.java:433)

at io.druid.initialization.Initialization$ModuleList.registerJacksonModules(Initialization.java:476)

at io.druid.storage.google.GoogleStorageDruidModule.getJacksonModules(GoogleStorageDruidModule.java:59)

at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

at java.lang.ClassLoader.loadClass(ClassLoader.java:424)

at java.net.URLClassLoader.findClass(URLClassLoader.java:361)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader$1.run(URLClassLoader.java:362)

at java.net.URLClassLoader$1.run(URLClassLoader.java:368)

at java.net.URLClassLoader.access$100(URLClassLoader.java:73)

at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)

at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)

at java.lang.ClassLoader.defineClass(ClassLoader.java:763)

at java.lang.ClassLoader.defineClass1(Native Method)

Exception in thread “main” java.lang.NoClassDefFoundError: io/druid/data/input/impl/PrefetchableTextFilesFirehoseFactory

I am unable to figure out what I should do so as to include the required classes?

I do see that there have been some recent refactoring related to PrefetchableTextFilesFirehoseFactory. The latest version available in maven repository is 0.10.1 which still refers to old path for the class. Any idea of when the new version will make its way into the repository?

Which version of Druid are you using? The druid-google-extensions:0.10.1 version should work with Druid 0.10.1. If you are using a different version of Druid you should also use a different matching version of the extensions.

Yes I was trying to use it with druid’s master branch. Thank you for pointing out. :slight_smile: