入门Lucene工程IDEA搭建
壹 | 下载Lucene
- 从官网下载Lucene-7.4.0后进行解压
- 官方网站:http://lucene.apache.org/
- JDK版本要求:jdk1.8或以上
贰 | 使用的jar包
- lucene-7.4.0\core\lucene-core-7.4.0.jar
- lucene-7.4.0\analysis\common\lucene-analyzers-common-7.4.0.jar
- commons-io-2.6.jar
叁 | 创建工程
- 创建一个普通的java工程。new project–>empty project–>next–>finish
- 弹出如下界面后,
···点击左侧project,在project SDK中选择项目的jdk版本
···点击modules,点击+号,选择new moudle
···选择java,next,ok
肆 | 建目录,加jar包
- 在项目下新建lib目录,复制粘贴加入贰中的三个jar包。
- 为模块添加jar包依赖
···点击下图中圈中的按钮在这里插入图片描述(junit是测试包,可根据需要进行导入)
···按图中所示,选择jars or directories,选中lib文件夹中的三个jar包,ok,
···点击apply,ok,即可。
伍 | 编写测试方法
- 测试代码
package com.Lucene;
import org.apache.commons.io.FileUtils;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.document.TextField;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.index.IndexWriterConfig;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.FSDirectory;
import org.junit.Test;
import java.io.File;
public class test {
public static void main(String[] args) throws Exception {
//1、创建一个Director对象,指定索引库保存的位置。
Directory directory = FSDirectory.open(new File("C:\\temp\\index").toPath());
//2、基于Directory对象创建一个IndexWriter对象
IndexWriterConfig config = new IndexWriterConfig();
IndexWriter indexWriter = new IndexWriter(directory, config);
//3、读取磁盘上要创建索引的文件
File dir = new File("F:\\searchsource");
File[] files = dir.listFiles();
for (File f : files) {
//取文件名
String fileName = f.getName();
//文件的路径
String filePath = f.getPath();
//文件的内容
String fileContent = FileUtils.readFileToString(f, "utf-8");
//文件的大小
long fileSize = FileUtils.sizeOf(f);
Field fieldName = new TextField("name", fileName, Field.Store.YES);
Field fieldPath = new TextField("path", filePath, Field.Store.YES);
Field fieldContent = new TextField("content", fileContent, Field.Store.YES);
Field fieldSize = new TextField("size", fileSize + "", Field.Store.YES);
Document document = new Document();
document.add(fieldName);
document.add(fieldPath);
document.add(fieldContent);
document.add(fieldSize);
indexWriter.addDocument(document);
}
indexWriter.close();
}
}
- 执行成功效果
C盘索引库目录中成功生成索引
完成。