Python 调用 Java 实例详解:基于 JPype1 的 Linux 环境配置与代码实现

洛溪
洛溪
发布时间:2026-10-13| 4人浏览过
原创

本文详细讲解在 Linux 环境下如何使用 Python 调用 Java 代码。通过安装 jpype1 库,实现从 Python 启动 JVM 并执行 Java 类。重点演示如何加载非 JDK 的自定义 Jar 包(如 test.jar),处理 com.Test 类,并解决 Linux 下的文件权限问题。提供完整的代码示例,涵盖 JVM 启动、类实例化及方法调用流程,适用于服务器端混合编程场景。

Python 调用 Java 实例详解

前言:

由于 Python 在服务端编程领域的优势不如 Java,因此在某些需要高性能或现有 Java 库支持的服务器端场景中,可能需要通过 Python 调用 Java 代码来实现功能整合。

前提:

本教程基于 Linux 操作系统环境进行演示。

1 安装 jpype1

安装完成后,可以使用以下代码进行基础测试:

from jpype import *
startJVM(getDefaultJVMPath(), "-ea")
java.lang.System.out.println("Hello World")
shutdownJVM()

2 调用非 JDK 的 Jar 包,例如 test.jar

该 Jar 包内部包含 com.Test 类。

package com;
public class Test {
  public String test(String str){
    return str;
  }
}

接下来演示如何在 Python 中调用该 Jar 包中的类。

jar_path = os.path.join(os.path.abspath('.'), 'libs/test.jar')
jpype.startJVM(jpype.getDefaultJVMPath(), "-ea", "-Djava.class.path=%s" % jar_path)
Test = jpype.JClass('com.Test')
# 或者通过JPackage引用Test类
# com = jpype.JPackage('com')
# Test = com.Test
t = Test()
res = t.test("a")
print res
jpype.shutdownJVM()

注意:在 Linux 系统下,请务必检查并设置好相关文件及 Jar 包的执行权限,否则可能导致调用失败。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。