-
Notifications
You must be signed in to change notification settings - Fork 810
Windows
hankcs edited this page May 8, 2022
·
8 revisions
pyhanlp完全兼容Windows,依然一句话安装:
pip install pyhanlp
如果安装失败,请根据报错排查:
pyhanlp目前使用jpype1这个Python包来调用HanLP,如果遇到:
building '_jpype' extension
error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual
C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools
则推荐利用轻量级的Miniconda来下载编译好的jpype1。Miniconda是Python语言的开源发行版,提供更方便的包管理。安装时请勾选:
然后执行:
conda install -c conda-forge openjdk python=3.8 jpype1=0.7.0 -y
pip install pyhanlp
请不要将Python安装到c:/program files
,解决方案参考 https://github.com/hankcs/HanLP/issues/1025
未安装Java时会报错:
jpype._jvmfinder.JVMNotFoundException: No JVM shared library file (jvm.dll) foun
d. Try setting up the JAVA_HOME environment variable properly.
HanLP主项目采用Java开发,所以需要Java运行环境。
最简单保险的方法是利用conda安装:
conda install -c conda-forge openjdk python=3.8 jpype1=0.7.0 -y
自己安装的话,请下载JDK。你需要保证JDK位数、操作系统位数和Python位数一致。pyhanlp在64位系统上通过了所有测试;在32位系统上可以运行但不做保证。你可能还需要设置JAVA_HOME
环境变量,参考教程。
请注意cygwin内部的路径都是虚拟的,外部JVM访问不到。如果你遇到类似:
raise _RUNTIMEEXCEPTION.PYEXC("Class %s not found" % name)
jpype._jexception.RuntimeExceptionPyRaisable: java.lang.RuntimeException: Class
com.hankcs.hanlp.dictionary.CustomDictionary not found
请不要export HANLP_JAR_PATH=/usr/...
,JVM访问不到这个路径;你的路径应该是Windows路径export HANLP_JAR_PATH=C:/...
。同理,hanlp.properties
中的root也必须是Windows路径。
执行hanlp
命令来验证安装。其它子命令也完全支持:
如果发生了本页面没有收录的错误,请提交issue(注明报错信息、操作系统和Python版本),谢谢。
如果你仍然看不懂,也许傻瓜虚拟机更合适你?