记一次Maven编译IKAnalyzer失败及解决办法
2016-09-05 22:25
246 查看
下载了一个开源项目,maven形式组织的,其中有一个依赖包是IKAnalyzer。
由于mvnrepository中不存在IKAnalyzer的坐标,因此该依赖包需要自己下载安装到本地maven仓库才可以。
IKAnalyzer项目的GitHub地址是https://github.com/wks/ik-analyzer
下载后进入ik-analyzer-master目录(POM文件所在目录),
运行mvn命令:
然后出现了一大堆错误,几乎每一行错误都有 “编码GBK的不可映射字符” 几个字,看的一头雾水不知道错误在哪里。
然后使用如下命令参数
显示出错误的详细堆栈信息并导出到文件中(因为cmd命令行显示的行数有限,后面覆盖了就看不到前面的了)
下图截取了部分错误信息:
打开\ik-analyzer-master\src\main\java\org\wltea\analyzer\dic.Hit.java源文件,发现对应错误提示的行数都是中文注释
这下问题明确了,因为操作系统是Windows7简体中文版,所以maven默认源文件编码为GBK,而源文件是按utf-8编码保存的,因此maven编译器按照GBK字符集无法识别utf-8的中文字符,也就出现了错误。
问题找到了解决也就容易了,在IKAnalyzer项目的pom文件中指定编码格式,加上这么一个属性:
如下图:
然后再重新执行maven的安装命令,果断成功了
由于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的安装命令,果断成功了
相关文章推荐
- maven 编译失败error in opening zip file/maven missing artifact解决办法
- zlib 在 Visual Studio 2005 下编译失败的解决办法
- zlib 在 Visual Studio 2005 下编译失败的解决办法
- Eclipse中编译Android项目工程失败,提示: Error in an XML file: aborting build 解决办法
- zlib 在 Visual Studio 2005 下编译失败的解决办法
- eclipse 3.6.1 安装maven插件失败的解决办法
- zlib 在 Visual Studio 2005 下编译失败的解决办法
- zlib 在 Visual Studio 2005 下编译失败的解决办法
- 当机器蓝屏后,vs编译提示“CreateRiaClientFilesTask”任务意外失败的解决办法!silverlight4.0
- 通过mk文件编译android4.0.3系统app源码后覆盖安装失败解决办法(android odex文件)
- zlib 在 Visual Studio 2005 下编译失败的解决办法
- zlib 在 Visual Studio 2005 下编译失败的解决办法
- zlib 在 Visual Studio 2005 下编译失败的解决办法
- Maven编译出现“java.lang.OutOfMemoryError: Java heap space”问题及解决办法
- eclipse 3.6.1 安装maven插件失败的解决办法
- zlib 在 Visual Studio 2005 下编译失败的解决办法
- zlib 在 Visual Studio 2005 下编译失败的解决办法
- eclipse 3.6.1 安装maven插件失败的解决办法
- 通过mk文件编译android4.0.3系统app源码后覆盖安装失败解决办法(android odex文件)
- 【Android】Lenovo K860 framework-res.apk回编译失败解决办法