analysis-ik
analysis-ik copied to clipboard
8.3.2版本什么时候更新呐
8.3.2版本什么时候更新呐
同问,吼吼
非常感谢您的来信
再不更新都8.4.0了
催更8.3.2,tks
催更+1
催更+1
把源码clone下来,把es的依赖版本改为8.3.2,编译打包后然后替换掉8.2.3Release里的jar,再把properties文件里的版本改为8.3.2,目前使用良好,没发现什么问题
试了一下,为什么启动的时候找不到里面的配置呢?这个配置没改动过的 property [name] is missing in [/usr/share/elasticsearch/plugins/ik/plugin-descriptor.properties]
可以自行编译,但是建议在jdk18下编译,不是jdk1.8。不然会报错class版本52(jdk1.8),需要使用class62(jdk18)进行编译。在jdk18下编译,记得把pom里面的es版本修改为当前最新的es版本即可。我自己编译的8.3.2的版本放在我自己的服务器上了,但是怕有些人ds我的服务器,我就不放出下载地址了。
催更8.3.3,tks
催更8.3.3,tks
自己clone源码,改pom里面的es版本编译呗。记得编译环境必须是jdk18,不是1.8的环境。
@ya0yy @wozl 不知道两位是怎么编译的,我试了下在本地 8.3.2、8.3.3 两个版本都编译不过。 master 分支默认的 7.16.0 可以编译过。
% java -version
openjdk version "18.0.1.1" 2022-04-22
OpenJDK Runtime Environment Homebrew (build 18.0.1.1+0)
OpenJDK 64-Bit Server VM Homebrew (build 18.0.1.1+0, mixed mode, sharing)
% mvn clean install
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /Users/xxx/elasticsearch-analysis-ik/src/main/java/org/elasticsearch/index/analysis/IkAnalyzerProvider.java:[13,9] constructor AbstractIndexAnalyzerProvider in class org.elasticsearch.index.analysis.AbstractIndexAnalyzerProvider<T> cannot be applied to given types;
required: java.lang.String,org.elasticsearch.common.settings.Settings
found: org.elasticsearch.index.IndexSettings,java.lang.String,org.elasticsearch.common.settings.Settings
reason: actual and formal argument lists differ in length
[INFO] 1 error
@ya0yy @wozl 不知道两位是怎么编译的,我试了下在本地 8.3.2、8.3.3 两个版本都编译不过。 master 分支默认的 7.16.0 可以编译过。
% java -version openjdk version "18.0.1.1" 2022-04-22 OpenJDK Runtime Environment Homebrew (build 18.0.1.1+0) OpenJDK 64-Bit Server VM Homebrew (build 18.0.1.1+0, mixed mode, sharing) % mvn clean install [INFO] ------------------------------------------------------------- [ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] /Users/xxx/elasticsearch-analysis-ik/src/main/java/org/elasticsearch/index/analysis/IkAnalyzerProvider.java:[13,9] constructor AbstractIndexAnalyzerProvider in class org.elasticsearch.index.analysis.AbstractIndexAnalyzerProvider<T> cannot be applied to given types; required: java.lang.String,org.elasticsearch.common.settings.Settings found: org.elasticsearch.index.IndexSettings,java.lang.String,org.elasticsearch.common.settings.Settings reason: actual and formal argument lists differ in length [INFO] 1 error
我是使用eslipse编译的,配置好jdk18环境和maven,再修改pom里面的es版本号,maven clean maven compile maven package就行。为啥建议你导入到eslipse或者其它ide中呢,就是当你修改pom文件中es版本后自动下载更新依赖。若项目有不兼容的地方,ide是会报错提示的,你自己修正即可编译。
@ya0yy @wozl 不知道两位是怎么编译的,我试了下在本地 8.3.2、8.3.3 两个版本都编译不过。 master 分支默认的 7.16.0 可以编译过。
% java -version openjdk version "18.0.1.1" 2022-04-22 OpenJDK Runtime Environment Homebrew (build 18.0.1.1+0) OpenJDK 64-Bit Server VM Homebrew (build 18.0.1.1+0, mixed mode, sharing) % mvn clean install [INFO] ------------------------------------------------------------- [ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] /Users/xxx/elasticsearch-analysis-ik/src/main/java/org/elasticsearch/index/analysis/IkAnalyzerProvider.java:[13,9] constructor AbstractIndexAnalyzerProvider in class org.elasticsearch.index.analysis.AbstractIndexAnalyzerProvider<T> cannot be applied to given types; required: java.lang.String,org.elasticsearch.common.settings.Settings found: org.elasticsearch.index.IndexSettings,java.lang.String,org.elasticsearch.common.settings.Settings reason: actual and formal argument lists differ in length [INFO] 1 error
IkAnalyzerProvider.java这个文件,基于作者的8.2.3的tag下的代码,在13行,需要把super构造器的参数indexSettings给去掉。用idea打开的话,在maven工具栏运行assembly:assembly这个插件就可以在target/releases目录下直接产出发布文件了。我这边使用open jdk17构建的,1.8版本的没有试过。
@ya0yy @wozl 不知道两位是怎么编译的,我试了下在本地 8.3.2、8.3.3 两个版本都编译不过。 master 分支默认的 7.16.0 可以编译过。
% java -version openjdk version "18.0.1.1" 2022-04-22 OpenJDK Runtime Environment Homebrew (build 18.0.1.1+0) OpenJDK 64-Bit Server VM Homebrew (build 18.0.1.1+0, mixed mode, sharing) % mvn clean install [INFO] ------------------------------------------------------------- [ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] /Users/xxx/elasticsearch-analysis-ik/src/main/java/org/elasticsearch/index/analysis/IkAnalyzerProvider.java:[13,9] constructor AbstractIndexAnalyzerProvider in class org.elasticsearch.index.analysis.AbstractIndexAnalyzerProvider<T> cannot be applied to given types; required: java.lang.String,org.elasticsearch.common.settings.Settings found: org.elasticsearch.index.IndexSettings,java.lang.String,org.elasticsearch.common.settings.Settings reason: actual and formal argument lists differ in length [INFO] 1 error
我这边也来补张图,上面那位确实说的很详细了,修改版本号后这个地方确实会报错,自行修正就可以编译了。
@wozl @ya0yy 谢谢两位!
@wozl @ya0yy 谢谢两位!
客气客气,技术在于分享讨论才有进步
好人一生品安 , 刚刚按照上面的教程 , 自行编译 , 安装成功了 .
根据楼上的修改编译了一版。 elasticsearch-analysis-ik-8.3.3.zip
顺便做了一个 Github Actions,以上的文件也是通过 CI 构建得到的。 https://github.com/ttimasdf/elasticsearch-analysis-ik/actions/runs/2811499908
edit: 在我自己的单机集群上测试通过,能跑起来至少
没看到 这个issue 自己在也是这么改的,发现起来了
@wozl 抱歉,是我把版本号搞错了,你说的方法是可行了,可以自动下载
我下载了7.16.5的源码,然后修改pom里的为<elasticsearch.version>7.16.6</elasticsearch.version> 出错了,提示如下: 1、Missing artifact org.elasticsearch:elasticsearch:jar:7.16.6 pom.xml /elasticsearch-analysis-ik-7.17.5 line 79 Maven 2、The container 'Maven Dependencies' references non existing library 'C:\Users\Admin.m2\repository\org\elasticsearch\elasticsearch\7.16.6\elasticsearch-7.16.6.jar' elasticsearch-analysis-ik-7.17.5
请问应该怎么解决?我试过改成7.16.1、7.16.2等都能自动下载依赖组件的。
非常感谢您的来信