Python 中调用 Java 的 JAR 包

在 Python 中调用 Java 的 JAR 包,您可以使用 subprocess 模块来执行 Java 命令,并指定要运行的 JAR 文件。以下是一个简单的示例代码:

python 复制代码
import subprocess

def run_jar(jar_path, args):
    command = ['java', '-jar', jar_path] + args
    process = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    stdout, stderr = process.communicate()
    return stdout, stderr

# 示例调用
jar_path = 'path/to/your.jar'
args = ['arg1', 'arg2']
stdout, stderr = run_jar(jar_path, args)
print(stdout.decode('utf-8'))
print(stderr.decode('utf-8'))

在这个示例中,run_jar 函数接受 JAR 文件的路径和参数列表作为输入,并执行以下操作:

  1. 构建包含 Java 命令和 JAR 文件路径的命令列表。
  2. 使用 subprocess.Popen 执行命令,并捕获标准输出和标准错误。
  3. 返回标准输出和标准错误的内容。

您需要将 'path/to/your.jar' 替换为实际的 JAR 文件路径,并根据需要调整参数列表。然后,调用 run_jar 函数并打印标准输出和标准错误的内容。

请注意,在调用 JAR 文件时,确保您的计算机上已经安装了 Java 运行时环境(JRE)。

方法2:

c 复制代码
import subprocess

def jar_call(arg1,arg2,arg3):
    java_cmd = 'java'
    jar_path = ''
    try:
        output = subprocess.check_output(
            [java_cmd,'-jar',jar_path,arg1,arg2,arg3]
        )
        output = output.decode('GBK')
        print('调用成功')
    except:
        print('调用失败')
相关推荐
Thneonl11 分钟前
Celery 生产踩坑:1000 任务积压与 acks_late 双重执行
后端·python
清桔12 分钟前
模型的调用
python
IT枫斗者枫哥12 分钟前
MyBatis一对多分页:LIMIT 20,为什么凑不齐20个订单?
java·数据库
代码方舟12 分钟前
Java数据工程:利用天远全网运营商三要素优化线上实名认证合规体验
java·人工智能
小小张说故事12 分钟前
Python 多线程为什么跑不快?asyncio 入门指南:异步并发从零上手
后端·python
BBmmo13 分钟前
我的 Java 学习笔记 · 第 7 篇:泛型与通配符
java
独泪了无痕13 分钟前
Hutool之RandomUtil:随机数生成的终极利器
java·后端
10年前端老司机13 分钟前
干货分享|企业智能知识库 Rerank 重排序落地实践与踩坑总结
python·aigc·agent
花开路口13 分钟前
深入理解 Java/Kotlin 协变与逆变
java·kotlin
运行时异常14 分钟前
【WMS 仓储系统集成 AI Agent 实战】第 7 讲:Vue3 前端工程化——Token 刷新锁、Markdown 渲染踩坑与权限体系
java