Python - Java桥。steve menard的jpype项目的fork(http://jpype.sourceforge.net/),以及luis nell应用的修改(https://github.com/original/jpype)

JPype1-py3的Python项目详细描述


折旧警告

这个fork是一段时间以来唯一与Python 3兼容的JPype版本, 但它后来停滞不前,其根本项目, jpype-project/jpype已添加 很多功能,包括PY3的支持。

Issue #28已经表明 这两个分叉之间的区别主要在于实现和 分发级别

因此,这个fork现在已经被弃用,不应该再使用了。 版本0.5.5.4将是此存储库的最后一个发布版本,并且仅限于 在安装和导入时添加弃用警告。

这个项目将保存在GitHub上,不会再发展了

jpype-python 3

original Website

JPype is an effort to allow python programs full access to java class libraries. This is achieved not through re-implementing Python, as Jython/JPython has done, but rather through interfacing at the native level in both Virtual Machines. Eventually, it should be possible to replace Java with python in many, though not all, situations. JSP, Servlets, RMI servers and IDE plugins are good candidates.

Once this integration is achieved, a second phase will be started to separate the Java logic from the Python logic, eventually allowing the bridging technology to be used in other environments, I.E. Ruby, Perl, COM, etc …

这个github fork是jpype的python 3版本。 它不支持python 2

这是originell/jpype的叉子, 它最初的目的是简化jpype在linux和 MacOS X

已知缺陷/限制

  • 包外(在<default>package中)的Java类不能 进口的
  • 无法访问与python关键字冲突的字段或方法
  • 由于缺乏jvm支持,您不能关闭jvm然后重新启动 它。
  • 有些方法依赖于“当前”类/调用方。因为电话是直接打过来的 从python代码中没有当前类,这些方法不起作用。 用户手册列出了所有类似的已知方法。

路线图

这个J型分叉的未来发展:

  • 紧跟Python2版本(补丁、问题等)
  • 在Python3中转换示例
  • 查看代码(Python和C++):清理,添加注释,…/LI>
  • 单独的Python 3特定代码(Python和C++)

要求

Python 3开发文件和Sun/Oracle JDK/JRE变体 或者openjdk。

debian/ubuntu

debian/ubuntu用户必须安装g++python3-dev 首先:

sudo apt-get install g++ python3-dev

红帽/软呢帽

Fedora用户也一样:

su -c 'yum install gcc-c++ python3-devel'

窗口

在Windows上,您必须安装:

安装

在Linux上:

sudo python3 setup.py install

在Windows上:

python setup.py install

如果失败…

这主要是由于安装程序无法找到 JAVA_HOME。如果发生这种情况,请做两件事:

  1. 您可以通过查找上的JAVA_HOME继续安装 你自己的(标题等的位置)并且明确 为安装设置:

    JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-amd64 python3 setup.py install
    
  2. 请创建问题 on GitHub和 把你所有的信息都贴出来。

测试时间

OSArchitectureJava version
Fedora 1864 bitsOpenJDK 6 and 7
Fedora 1964 bitsOpenJDK 6 and 7
Ubuntu 12.0464 bitsOpenJDK 6 and 7
Mac OS X 10.8.464 bitsOracle JDK 6 and 7
Mac OS X 10.964 bitsOracle JDK 6 and 7
Windows 732 bitsOracle JDK 7 and OpenJDK 7

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java变量始终存储0值。为什么?   如何使用Java/REST将Azure blob从一个存储容器移动到另一个存储容器?   java将commons DBCP从1.2升级到1.4,我应该害怕吗?   java如何使用分隔符拆分字符串?   java使用数组读取json对象   java在groovy中切片字符串   交换数组java的两个邻域元素   java移动用于确定字符串是否为回文的逻辑   java Android应用程序在一个活动中崩溃   java Sparkjava将webapp文件夹设置为静态资源/模板的文件夹   java复杂条件表达式,用户易用。   java如何仅在表存在时从表中选择值   java I无法将数据从Recyclerview传递到其他活动   java数据结构最佳设计(大数据)   java Android从DatePickerDialogFragment中删除日历视图   java将数据从Firebase获取到片段   数组。sort()在java中运行不正常