Python JPype 在 Win7 下安装与使用

JPype 是 Python调用 Java 代码的模块,需要Java SE Runtime Environment (JRE)的支持。

个人安装环境: Windows 7 64bit + Python 2.7 32bit + JRE 32bit

下载安装

下载 JPype-0.5.4.2.win32-py2.7.exe ,
https://sourceforge.net/projects/jpype/files/JPype/0.5.4/
双击按默认安装,即可。

测试代码

import jpype 

jvmPath = jpype.getDefaultJVMPath() 
jpype.startJVM(jvmPath) 
jpype.java.lang.System.out.println("hello world!")
jpype.shutdownJVM()

问题与解决方法

问题:jpype.getDefaultJVMPath() returns None

原因:64bit java 与 32bit python 混用

解决方法:

下载 32bit JRE
http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html,
选择下载
  Windows x86 59.43 MB jre-8u111-windows-i586.tar.gz

下载后,解压到某一目录下,以 E: 目录为例,在测试代码中,
不使用jpype.getDefaultJVMPath() 函数获取jvm路径,而采用自定义jvm目录,如下所示

import jpype 

# jvmPath = jpype.getDefaultJVMPath() 
jvmPath = ur'E:\jre1.8.0_111\bin\client\jvm.dll'
jpype.startJVM(jvmPath) 
jpype.java.lang.System.out.println("hello world!")
jpype.shutdownJVM()

参考资料

1、JPype: Bridging the worlds of Java and Python

http://jpype.sourceforge.net/

2、JPype的安装与使用

http://www.ibm.com/developerworks/cn/opensource/os-cn-jpype/

3、jpype.getDefaultJVMPath() returns None #118

https://github.com/originell/jpype/issues/118

原文地址:https://www.cnblogs.com/klchang/p/6227577.html