Index: lucene/analysis/common/src/java/org/apache/lucene/analysis/util/AnalysisSPILoader.java =================================================================== --- lucene/analysis/common/src/java/org/apache/lucene/analysis/util/AnalysisSPILoader.java (revision 1455463) +++ lucene/analysis/common/src/java/org/apache/lucene/analysis/util/AnalysisSPILoader.java (working copy) @@ -52,6 +52,9 @@ public AnalysisSPILoader(Class clazz, String[] suffixes, ClassLoader classloader) { this.clazz = clazz; this.suffixes = suffixes; + if (clazz.getClassLoader() != classloader) { + reload(clazz.getClassLoader()); + } reload(classloader); } Index: lucene/core/src/java/org/apache/lucene/util/NamedSPILoader.java =================================================================== --- lucene/core/src/java/org/apache/lucene/util/NamedSPILoader.java (revision 1455463) +++ lucene/core/src/java/org/apache/lucene/util/NamedSPILoader.java (working copy) @@ -39,6 +39,9 @@ public NamedSPILoader(Class clazz, ClassLoader classloader) { this.clazz = clazz; + if (clazz.getClassLoader() != classloader) { + reload(clazz.getClassLoader()); + } reload(classloader); }