Java 打Jar包给python 调用

踩坑

使用这种方式打出的jar包最后无法使用会报错没有清单属性

javac getHeader.java
java -cvf getHeader.jar getHeader.class

具体是没有配置函数的入口 这篇文章有解释

我在网上找了使用Idea 进行打包的流程贴在这里

具体打包流程

配置好的界面应该是这样的

//getHeader.java
package com.o00oO00o;


public class getHeader{
    public static String sign(int page ){
        return String.valueOf(page);
    }

}

调试好的python 代码

import os

import jpype
import requests

jvmPath = jpype.getDefaultJVMPath()

jpype.startJVM(jvmPath, "-ea", "-Djava.class.path=%s" % '/Volumes/file/code/java_code/jar_test/out/artifacts/jar_test_jar/jar_test.jar')

JDClass = jpype.JClass("com.o00oO00o.getHeader")
# 实例化Java类
jd = JDClass()
# 调用 方法


result = jd.sign(1)  # str
print(type(result),result)
posted @ 2021-01-09 19:07  如海  阅读(272)  评论(0编辑  收藏  举报