Compare commits

..

No commits in common. "master" and "v7.0.0" have entirely different histories.

7 changed files with 19 additions and 21 deletions

2
.github/FUNDING.yml vendored
View File

@ -1,2 +0,0 @@
patreon: medcl
custom: ["https://www.buymeacoffee.com/medcl"]

14
pom.xml Executable file → Normal file
View File

@ -12,7 +12,7 @@
<inceptionYear>2011</inceptionYear> <inceptionYear>2011</inceptionYear>
<properties> <properties>
<elasticsearch.version>8.4.1</elasticsearch.version> <elasticsearch.version>7.0.0</elasticsearch.version>
<maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.target>1.8</maven.compiler.target>
<elasticsearch.assembly.descriptor>${project.basedir}/src/main/assemblies/plugin.xml</elasticsearch.assembly.descriptor> <elasticsearch.assembly.descriptor>${project.basedir}/src/main/assemblies/plugin.xml</elasticsearch.assembly.descriptor>
<elasticsearch.plugin.name>analysis-ik</elasticsearch.plugin.name> <elasticsearch.plugin.name>analysis-ik</elasticsearch.plugin.name>
@ -34,10 +34,10 @@
<developers> <developers>
<developer> <developer>
<name>INFINI Labs</name> <name>Medcl</name>
<email>hello@infini.ltd</email> <email>medcl@elastic.co</email>
<organization>INFINI Labs</organization> <organization>elastic</organization>
<organizationUrl>https://infinilabs.com</organizationUrl> <organizationUrl>http://www.elastic.co</organizationUrl>
</developer> </developer>
</developers> </developers>
@ -71,7 +71,7 @@
<name>OSS Sonatype</name> <name>OSS Sonatype</name>
<releases><enabled>true</enabled></releases> <releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots> <snapshots><enabled>true</enabled></snapshots>
<url>https://oss.sonatype.org/content/repositories/releases/</url> <url>http://oss.sonatype.org/content/repositories/releases/</url>
</repository> </repository>
</repositories> </repositories>
@ -93,7 +93,7 @@
<dependency> <dependency>
<groupId>org.apache.logging.log4j</groupId> <groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId> <artifactId>log4j-api</artifactId>
<version>2.18.0</version> <version>2.3</version>
</dependency> </dependency>
<dependency> <dependency>

View File

@ -10,7 +10,7 @@ public class IkAnalyzerProvider extends AbstractIndexAnalyzerProvider<IKAnalyzer
private final IKAnalyzer analyzer; private final IKAnalyzer analyzer;
public IkAnalyzerProvider(IndexSettings indexSettings, Environment env, String name, Settings settings,boolean useSmart) { public IkAnalyzerProvider(IndexSettings indexSettings, Environment env, String name, Settings settings,boolean useSmart) {
super(name, settings); super(indexSettings, name, settings);
Configuration configuration=new Configuration(env,settings).setUseSmart(useSmart); Configuration configuration=new Configuration(env,settings).setUseSmart(useSmart);

View File

@ -11,7 +11,7 @@ public class IkTokenizerFactory extends AbstractTokenizerFactory {
private Configuration configuration; private Configuration configuration;
public IkTokenizerFactory(IndexSettings indexSettings, Environment env, String name, Settings settings) { public IkTokenizerFactory(IndexSettings indexSettings, Environment env, String name, Settings settings) {
super(indexSettings, settings,name); super(indexSettings, settings);
configuration=new Configuration(env,settings); configuration=new Configuration(env,settings);
} }

View File

@ -4,7 +4,7 @@
package org.wltea.analyzer.cfg; package org.wltea.analyzer.cfg;
import org.elasticsearch.common.inject.Inject; import org.elasticsearch.common.inject.Inject;
import org.elasticsearch.core.PathUtils; import org.elasticsearch.common.io.PathUtils;
import org.elasticsearch.common.settings.Settings; import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.env.Environment; import org.elasticsearch.env.Environment;
import org.elasticsearch.plugin.analysis.ik.AnalysisIkPlugin; import org.elasticsearch.plugin.analysis.ik.AnalysisIkPlugin;

View File

@ -57,7 +57,7 @@ class DictSegment implements Comparable<DictSegment>{
DictSegment(Character nodeChar){ DictSegment(Character nodeChar){
if(nodeChar == null){ if(nodeChar == null){
throw new IllegalArgumentException("node char cannot be empty"); throw new IllegalArgumentException("参数为空异常,字符不能为空");
} }
this.nodeChar = nodeChar; this.nodeChar = nodeChar;
} }

16
src/main/java/org/wltea/analyzer/dic/Dictionary.java Executable file → Normal file
View File

@ -52,7 +52,7 @@ import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients; import org.apache.http.impl.client.HttpClients;
import org.elasticsearch.SpecialPermission; import org.elasticsearch.SpecialPermission;
import org.elasticsearch.core.PathUtils; import org.elasticsearch.common.io.PathUtils;
import org.elasticsearch.plugin.analysis.ik.AnalysisIkPlugin; import org.elasticsearch.plugin.analysis.ik.AnalysisIkPlugin;
import org.wltea.analyzer.cfg.Configuration; import org.wltea.analyzer.cfg.Configuration;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
@ -80,7 +80,7 @@ public class Dictionary {
*/ */
private Configuration configuration; private Configuration configuration;
private static final Logger logger = ESPluginLoggerFactory.getLogger(Dictionary.class.getName()); private static final Logger logger = ESPluginLoggerFactory.getLogger(Monitor.class.getName());
private static ScheduledExecutorService pool = Executors.newScheduledThreadPool(1); private static ScheduledExecutorService pool = Executors.newScheduledThreadPool(1);
@ -294,7 +294,7 @@ public class Dictionary {
*/ */
public static Dictionary getSingleton() { public static Dictionary getSingleton() {
if (singleton == null) { if (singleton == null) {
throw new IllegalStateException("ik dict has not been initialized yet, please call initial method first."); throw new IllegalStateException("词典尚未初始化请先调用initial方法");
} }
return singleton; return singleton;
} }
@ -419,7 +419,7 @@ public class Dictionary {
List<String> lists = getRemoteWords(location); List<String> lists = getRemoteWords(location);
// 如果找不到扩展的字典则忽略 // 如果找不到扩展的字典则忽略
if (lists == null) { if (lists == null) {
logger.error("[Dict Loading] " + location + " load failed"); logger.error("[Dict Loading] " + location + "加载失败");
continue; continue;
} }
for (String theWord : lists) { for (String theWord : lists) {
@ -469,7 +469,7 @@ public class Dictionary {
} }
} }
if (entity.getContentLength() > 0 || entity.isChunked()) { if (entity.getContentLength() > 0) {
in = new BufferedReader(new InputStreamReader(entity.getContent(), charset)); in = new BufferedReader(new InputStreamReader(entity.getContent(), charset));
String line; String line;
while ((line = in.readLine()) != null) { while ((line = in.readLine()) != null) {
@ -518,7 +518,7 @@ public class Dictionary {
List<String> lists = getRemoteWords(location); List<String> lists = getRemoteWords(location);
// 如果找不到扩展的字典则忽略 // 如果找不到扩展的字典则忽略
if (lists == null) { if (lists == null) {
logger.error("[Dict Loading] " + location + " load failed"); logger.error("[Dict Loading] " + location + "加载失败");
continue; continue;
} }
for (String theWord : lists) { for (String theWord : lists) {
@ -562,7 +562,7 @@ public class Dictionary {
} }
void reLoadMainDict() { void reLoadMainDict() {
logger.info("start to reload ik dict."); logger.info("重新加载词典...");
// 新开一个实例加载词典减少加载过程对当前词典使用的影响 // 新开一个实例加载词典减少加载过程对当前词典使用的影响
Dictionary tmpDict = new Dictionary(configuration); Dictionary tmpDict = new Dictionary(configuration);
tmpDict.configuration = getSingleton().configuration; tmpDict.configuration = getSingleton().configuration;
@ -570,7 +570,7 @@ public class Dictionary {
tmpDict.loadStopWordDict(); tmpDict.loadStopWordDict();
_MainDict = tmpDict._MainDict; _MainDict = tmpDict._MainDict;
_StopWords = tmpDict._StopWords; _StopWords = tmpDict._StopWords;
logger.info("reload ik dict finished."); logger.info("重新加载词典完毕...");
} }
} }