要在 Python 中调用 jar 包并传递 JSON 数据并获取结果,可以使用 subprocess 模块。以下是一个示例代码:

import json
import subprocess

# 定义要传递的 JSON 数据
data = {"name": "John", "age": 30}
json_data = json.dumps(data)

# 调用 jar 包
jar_path = "path/to/jar/file.jar"
cmd = ["java", "-jar", jar_path, json_data]
result = subprocess.run(cmd, capture_output=True, text=True)

# 获取结果
output = result.stdout.strip()
result_data = json.loads(output)

在上面的代码中,我们首先将要传递的 JSON 数据转换为字符串。然后,我们使用 subprocess.run() 函数来运行 jar 包并传递 JSON 数据作为参数。我们使用 capture_output=True 参数来捕获标准输出,并使用 text=True 参数将输出转换为字符串。最后,我们将输出字符串转换回 JSON 数据以获取结果。

请注意,上述代码仅适用于 jar 包返回 JSON 格式的结果。如果 jar 包返回其他格式的结果,您需要相应地解析输出。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐