46 lines
2.8 KiB
Java
46 lines
2.8 KiB
Java
package ru.pdguard.detect;
|
|
|
|
import io.quarkus.runtime.annotations.RegisterForReflection;
|
|
|
|
/**
|
|
* Классы, которые OpenNLP создаёт по имени, разбирая описание признаков внутри модели.
|
|
*
|
|
* <p>В обычной сборке это работает само, в native-образе — нет: класс, не упомянутый
|
|
* в коде, туда просто не попадает. Без регистрации загрузка модели проходит, а
|
|
* создание распознавателя падает с {@code ClassNotFoundException} на первом запросе.
|
|
*
|
|
* <p>Перечислены фабрики целиком, а не только те, что встречаются в текущей модели:
|
|
* набор признаков задаётся при обучении и может измениться без правки кода.
|
|
*/
|
|
@RegisterForReflection(classNames = {
|
|
"opennlp.tools.namefind.TokenNameFinderFactory",
|
|
"opennlp.tools.namefind.BioCodec",
|
|
"opennlp.tools.util.featuregen.AggregatedFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.BigramNameFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.BrownClusterBigramFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.BrownClusterTokenClassFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.BrownClusterTokenFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.CachedFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.CharacterNgramFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.DefinitionFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.DictionaryFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.DocumentBeginFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.POSTaggerNameFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.PosTaggerFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.PrefixFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.PreviousMapFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.SentenceFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.SuffixFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.TokenClassFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.TokenFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.TokenPatternFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.TrigramNameFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.WindowFeatureGeneratorFactory",
|
|
"opennlp.tools.util.featuregen.WordClusterFeatureGeneratorFactory"
|
|
})
|
|
final class OpenNlpReflection {
|
|
|
|
private OpenNlpReflection() {
|
|
}
|
|
}
|