记一次Maven编译IKAnalyzer失败及解决办法

下载了一个开源项目,maven形式组织的,其中有一个依赖包是IKAnalyzer。

由于mvnrepository中不存在IKAnalyzer的坐标,因此该依赖包需要自己下载安装到本地maven仓库才可以。

IKAnalyzer项目的GitHub地址是https://github.com/wks/ik-analyzer

下载后进入ik-analyzer-master目录(POM文件所在目录),

运行mvn命令:

mvn install -Dmaven.test.skip=true

然后出现了一大堆错误,几乎每一行错误都有 “编码GBK的不可映射字符” 几个字,看的一头雾水不知道错误在哪里。

然后使用如下命令参数

mvn install -e -X -Dmaven.test.skip=true >.\1.txt

显示出错误的详细堆栈信息并导出到文件中(因为cmd命令行显示的行数有限,后面覆盖了就看不到前面的了)

下图截取了部分错误信息:

打开\ik-analyzer-master\src\main\java\org\wltea\analyzer\dic.Hit.java源文件,发现对应错误提示的行数都是中文注释

这下问题明确了,因为操作系统是Windows7简体中文版,所以maven默认源文件编码为GBK,而源文件是按utf-8编码保存的,因此maven编译器按照GBK字符集无法识别utf-8的中文字符,也就出现了错误。

问题找到了解决也就容易了,在IKAnalyzer项目的pom文件中指定编码格式,加上这么一个属性:

<properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

如下图:

然后再重新执行maven的安装命令,果断成功了

posted @ 2016-08-02 19:44  zffenger  阅读(1090)  评论(0编辑  收藏  举报