说明
本文讲述的是如何将Fess源码在IDEA上运行起来,方便我们的研究
前提,
- 你已经在GitHub上下载了源码包
- 并且已经下载完了Maven的相关依赖
- 与Fess版本匹配的ES节点也已经启动了,并且做好了与Fess连接的适配
第三点可以参考我的另一篇博文elasticsearch节点需要做哪些工作才能与Fess连接上
你也可以不做第三点,使用Fess自创建的内置es节点。(项目启动自动创建)
版本说明文章来源:https://www.toymoban.com/news/detail-426150.html
- Fess版本13.14
- ES版本7.14.0
运行antrun:run
运行antrun:run命令
可能一次不行,多运行几次直到成功为止!文章来源地址https://www.toymoban.com/news/detail-426150.html
注释pom中的三行scope
<!-- Tomcat -->
<dependency>
<groupId>org.dbflute.tomcat</groupId>
<artifactId>tomcat-boot</artifactId>
<version>${tomcat.boot.version}</version>
<!-- Disable scope at development on IDEA -->
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-el-api</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jasper-el</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
<version>${tomcat.version}</version>
<!-- Disable scope at development on IDEA -->
<scope>provided</scope>
</dependency>
<dependency><!-- for jsp -->
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<version>${tomcat.version}</version>
<!-- Disable scope at development on IDEA -->
<scope>provided</scope>
</dependency>
注释掉<!-- Disable scope at development on IDEA -->下面的scope
总共三行
启动项目
- 修改org.codelibs.fess.es.client.SearchEngineClient
如果你想让Fess连接上你的ES节点,你就需要修改SearchEngineClient类
在open()方法中,找到httpAddress = "http://localhost:" + port;
这一行代码,注释掉,写成你自己ES节点的http://host:port
- 找到FessBoot类
如果没有注释第二步中的三个scope,启动项目会报启动类找不到Error如下图
- tips
注意当你想要将项目打包,以bat形式运行项目时需要将第二步pom中的注释去掉,否则启动fess.bat会报找不到启动类Error.
到了这里,关于如何在IDEA上运行Fess源代码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!