首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >javabridge.jutil.JVMNotFoundError:找不到Java虚拟机

javabridge.jutil.JVMNotFoundError:找不到Java虚拟机
EN

Stack Overflow用户
提问于 2019-03-18 12:49:18
回答 1查看 2.4K关注 0票数 0

我想在我的python代码中使用Weka,所以我根据https://fracpete.github.io/python-weka-wrapper/install.html安装了java包装器python(2.7.16 ),我的Java版本是:1.8.0_201版本1.8.0_201(TM) SE运行时环境(build 1.8.0_201-b09) java HotSpot(TM) 64位服务器VM (build 25.201-b09,混合模式)

此外,我还根据https://troubleshooter.xyz/wiki/fix-java-virtual-machine-jvm-not-found-error/将JDK路径添加到用户变量路径中。

但它带来了错误:

代码语言:javascript
复制
   >>>import os
   >>>import traceback
   >>>import weka.core.jvm as jvm
   Traceback (most recent call last):
   File "<stdin>", line 1, in <module>
   File "C:\Python27\lib\site-packages\weka\core\jvm.py", line 17, in 
   <module>
    import javabridge
   File "C:\Python27\lib\site-packages\javabridge\__init__.py", line 38, in 
    <module>
    from .jutil import start_vm, kill_vm, vm, activate_awt, deactivate_awt
    File "C:\Python27\lib\site-packages\javabridge\jutil.py", line 151, in 
    <module>
    os.pathsep + os.path.join(find_javahome(), "bin")
    File "C:\Python27\lib\site-packages\javabridge\jutil.py", line 139, in 
    _find_jvm
    raise JVMNotFoundError()
    javabridge.jutil.JVMNotFoundError: Can't find the Java Virtual Machine
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-24 08:33:56

我不是Windows用户,设置Python似乎总是充满问题.但我终于有时间设置一个Windows 10实例..。以下是我所做的:

  • 没有定义JAVA_HOME变量
  • java可执行文件的位置:
代码语言:javascript
复制
where java
C:\Program Files (x86)\Common Files\Oracle\Java\javapath\java.exe
C:\ProgramData\Oracle\Java\javapath\java.exe
  • 安装了Java版本:
代码语言:javascript
复制
java -version
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
  • 用于Python2.7的VC++编译器(用于编译javabrid) http://aka.ms/vcpython27
  • Python 2.7的Anaconda (4.3.0.1) 64.exe
  • 安装anaconda后路径的值:
代码语言:javascript
复制
C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\ProgramData\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Anaconda2;C:\Anaconda2\Scripts;C:\Anaconda2\Library\bin;C:\Users\fracpete\AppData\Local\Microsoft\WindowsApps;
  • 为pww创建anaconda环境(需要通过anaconda安装numpy):
代码语言:javascript
复制
conda create -n py27-pww numpy
  • 激活环境:
代码语言:javascript
复制
activate py27-pww
  • 安装pww:
代码语言:javascript
复制
pip install python-weka-wrapper
  • 测试pww:
代码语言:javascript
复制
python
import weka.core.jvm as jvm
jvm.start()
from weka.classifiers import Classifeir
cls = Classifier(classname="weka.classifiers.trees.J48")
print(cls)
jvm.stop()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55221801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档