通用技术 jPype Python 调用 Jar 包中的函数方法遇到异常 无法处理,求帮忙解决

Benjamin · June 19, 2019 · Last by Benjamin replied at June 26, 2019 · 822 hits

Java 代码封装部分

import com.google.gson.Gson;

/**
* Created by Benjamin on 2019/6/18.
*/

public class CreatJson {

private String creatJson(){

JsonInfo jsonInfo = new JsonInfo();
jsonInfo.setState("0");

jsonInfo.setDecrypteddata(DesInfo.getDecrypteddata());

jsonInfo.setToken(DesInfo.getToken());
jsonInfo.setData(DesInfo.getData());
jsonInfo.setPrefix(DesInfo.getPrefix());
jsonInfo.setSuffix(DesInfo.getSuffix());
jsonInfo.setKey(DesInfo.getKey());

Gson gson2=new Gson();
String str=gson2.toJson(jsonInfo);
return str;

}

// 加密
public String encrypted(Integer num,String parameter){
LDSDes.select(num); // 设置秘钥 头、中、尾
String data = LDSDes.RarString(parameter); //字符串压缩
String encrypted = LDSDes.encrypted(DesInfo.getKey(),data); // 加密字符串
String token = LDSDes.token(DesInfo.getPrefix(),encrypted,DesInfo.getSuffix()); // 获取token
return creatJson();
}

// 解密
public String decrypted(String data){
String s= LDSDes.decrypted(data);
if (s == null){
String str = "Decryption failed,Not yet supported.";
DesInfo.setData(str);
}
return creatJson();
}


}

Python 无法调用jar包中的加密方法,其他两个可以成功调用
PS:实测 Java调用该Jar无问题、Jmeter调用也无问题

这个图的异常不用管,能调用设置对象属性有问题

2019-6-24 21:34:23
尝试性解决问题,但是问题还是没有得到很好解决

fuck..........................

附言 1  ·  June 24, 2019

JPype为拓展部分,部分拓展功能宣告失败;

简单说一下本次拓展内容:
Java + Maven 封装为 jar包,Jar包提供功能:GUI操作界面、Java -jar xxx.jar <参数1> <参数2>、Jar包封装方法返回JSON供其他工具调用如:Java、Jmeter、Python等其他可调用Jar方法的工具或语言。

最佳回复

int和integer的数据结构是不一样的,需要先进行转化

select = jpype.java.lang.Integer(1)
共收到 6 条回复 时间 点赞
Benjamin #1 · June 20, 2019 作者

依然无解,,,

之前无聊试过,JPackage调用静态方法,调用非静态用JClass就行了

Benjamin #3 · June 22, 2019 作者
膨化先生 回复

看代码是非静态方法;

尝试性调用静态方法,依旧报错误信息

Benjamin 回复

26行
jx = JXClass()

int和integer的数据结构是不一样的,需要先进行转化

select = jpype.java.lang.Integer(1)
Benjamin #6 · June 26, 2019 作者
keke 回复

你好,该问题已解决,多谢

Benjamin 关闭了讨论 26 Jun 21:54
需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up