Java.lang.ClassNotFoundException: solr.LatLonType при запуске solr со схемой из django build_solr_schema

Я хочу подключить поисковую функциональность к Django. Я использую django-haystack и solr. С недавно созданным Solr core Я получаю следующую ошибку при запуске Solr с новым schema.xml сгенерированным из python manage.py build_solr_schema

Caused by: java.lang.ClassNotFoundException: solr.LatLonType
        at java.net.URLClassLoader.findClass(URLClassLoader.java:445) ~[?:?]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:588) ~[?:?]
        at java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:872) ~[?:?]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[?:?]
        at java.lang.Class.forName0(Native Method) ~[?:?]
        at java.lang.Class.forName(Class.java:488) ~[?:?]
        at java.lang.Class.forName(Class.java:467) ~[?:?]
        at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:527) ~[?:?]
        at org.apache.solr.core.SolrResourceLoader.newInstance(SolrResourceLoader.java:604) ~[?:?]
        at org.apache.solr.core.SolrResourceLoader.newInstance(SolrResourceLoader.java:598) ~[?:?]
        at org.apache.solr.schema.FieldTypePluginLoader.create(FieldTypePluginLoader.java:74) ~[?:?]
        at org.apache.solr.schema.FieldTypePluginLoader.create(FieldTypePluginLoader.java:43) ~[?:?]
        at org.apache.solr.util.plugin.AbstractPluginLoader.load(AbstractPluginLoader.java:144) ~[?:?]
        at org.apache.solr.schema.IndexSchema.readSchema(IndexSchema.java:531) ~[?:?]
        at org.apache.solr.schema.IndexSchema.<init>(IndexSchema.java:188) ~[?:?]
        at org.apache.solr.schema.ManagedIndexSchema.<init>(ManagedIndexSchema.java:119) ~[?:?]
        at org.apache.solr.schema.ManagedIndexSchemaFactory.create(ManagedIndexSchemaFactory.java:279) ~[?:?]
        at org.apache.solr.schema.ManagedIndexSchemaFactory.create(ManagedIndexSchemaFactory.java:51) ~[?:?]
        at org.apache.solr.core.ConfigSetService.createIndexSchema(ConfigSetService.java:342) ~[?:?]
        at org.apache.solr.core.ConfigSetService.lambda$loadConfigSet$0(ConfigSetService.java:253) ~[?:?]
        at org.apache.solr.core.ConfigSet.<init>(ConfigSet.java:49) ~[?:?]
        at org.apache.solr.core.ConfigSetService.loadConfigSet(ConfigSetService.java:249) ~[?:?]
        at org.apache.solr.core.CoreContainer.createFromDescriptor(CoreContainer.java:1550) ~[?:?]
        at org.apache.solr.core.CoreContainer.lambda$load$10(CoreContainer.java:950) ~[?:?]

как я могу исправить мой schema.xml?

apache solr 9.0 django 4.0

LatLonType был устаревшим со времен Solr 7 и теперь удален в Solr 9.

Вместо этого используйте LatLonPointSpatialField.

<fieldType name="location" class="solr.LatLonPointSpatialField" docValues="true"/>

LLPSF поддерживает переключение между индексированным, хранимым, docValues и multiValued. LLPSF внутренне использует двумерный индекс Lucene "Points" (дерево BDK), когда включена опция "indexed" (по умолчанию). Когда включена функция "docValues", пара широты и долготы разбивается на 64 бита и помещается в Lucene DocValues. Точность данных docValues составляет около сантиметра.

Вернуться на верх