Custom IndexProvider - How do I make JanusGraph to scan application jar for config options?

Ivan Cikic <ivan...@...>


I need to plug in custom IndexProvider into JG (need one compatible with Solr 4). Annotating the class with @PreInitializeConfigOptions seems to be working fine, at least while testing from within IDE. Once packaged, JG seems to ignore jars while scanning classpath for configuration options. See log:

2017-04-07 22:43:11 TRACE org.janusgraph.core.util.ReflectiveConfigOptionLoader:235 - Skipping nonexistent, non-directory, or unreadable classpath element ABC.jar
2017-04-07 22:43:11 TRACE org.janusgraph.core.util.ReflectiveConfigOptionLoader:238 - Retaining classpath element ABC.jar

Besides the fact that log is confusing (is it skipped or retained?), ReflectiveConfigOptionLoader seems to enforce only directory scan. See: 

Is there a reason for this, besides the increased startup time (I can see that Titan introduced this change in 0.9)? And more importantly, is there another way I can configure my IndexProvider?