pb调用jar包的方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pb调用jar包的方法相关的知识,希望对你有一定的参考价值。

您好,调用jar包的方法是指在Java语言中,通过使用Java Archive(JAR)文件来调用类库中的方法,从而实现某些功能。JAR文件是一种将多个文件打包成一个文件的压缩文件,它可以包含Java类、资源文件和元数据文件。

要调用JAR文件中的方法,可以使用Java的ClassLoader类,它可以加载JAR文件中的类,然后使用反射机制来调用JAR文件中的方法。

此外,还可以使用Java的URLClassLoader类来加载JAR文件中的类,然后使用反射机制来调用JAR文件中的方法。

最后,还可以使用Java的URLConnection类来加载JAR文件中的类,然后使用反射机制来调用JAR文件中的方法。

总之,调用JAR文件中的方法可以通过使用Java的ClassLoader类、URLClassLoader类和URLConnection类来实现,并且使用反射机制来调用JAR文件中的方法。
参考技术A 查询有关资料和许多专业人士交流可以知道,创建JAVA的医保示例工程,并导入相关的示例和需要JAR,创建后如下:
说明:其中libs中是需要用到jar库,bcp和hsaf开头的是算法和加密相关的库,其它是一些帮助类HseEncAndDecUtil是示例
创建完成后可以导出jar。不熟悉java创建工程和导出jar的同学可以参考百度方法,这里不是调用重点就不详细说明。
PB代码
我们以调用main方法中的
SM2Util.getKeyPairStr()
为例,PB调用过程如下:
1. 首先我们下载SatJNI,里面包含了示例代码
主要函数定义在n_jvmapi中,n_jvmapi代码如下
forward
global type n_jvmapi from nonvisualobject
end type
end forward

global type n_jvmapi from nonvisualobject autoinstantiate
end type

type prototypes
Function ulong SatJVM_Create(String jarPath) library "satjni.dll"
Subroutine SatJVM_Destroy(ulong jvm) library "satjni.dll"
function Any SatJVM_Invoke(ulong jvm, ulong code, ...) system library "satjni.dll" alias for "SatJVM_Invoke"
end prototypes
type variables
//JVM
constant ulong API_InvokeStaticMethod = 2
constant ulong API_InvokeObjectMethod = 3
constant ulong API_CreateInstance = 4
constant ulong API_DestroyInstance = 5
constant ulong API_SetStaticField = 6
constant ulong API_SetObjectField = 7
constant ulong API_GetStaticField = 8
constant ulong API_GetObjectField = 9
end variables
on n_jvmapi.create
call super::create
TriggerEvent( this, "constructor" )
end o
on n_jvmapi.destroy
TriggerEvent( this, "destructor" )
call super::destroy
end on

jar嵌入静态资源 供引用调用

参考技术A 一、jar包的制作
1、maven工程引入下列三个依赖

2、写三个Java文件 和 相应资源包(vue+element)

3、写index.html ,可直接引用本地资源也可cdn 引入,正常编写网页
===================
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">

<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
</head>
<body>
<div id="app">
<el-button @click="visible = true">Button</el-button>
<el-dialog :visible.sync="visible" title="Hello world">
<p>Try Element</p>
</el-dialog>
</div>
</body>

<script src="https://unpkg.com/vue/dist/vue.js"></script>

<script src="https://unpkg.com/element-ui/lib/index.js"></script>
<script>
new Vue(
el: '#app',
data: function()
return visible: false

)
</script>
</html>
===================
4、InitListener 初始化文件,执行相应初始化动作,可不加

5、MvcConfig配置文件,自动装配bean

6、ThisApi 自定义注解类,并引入MvcConfig.class

7、生成jar包

二、jar包本地引入,并执行
1、新建springboot项目,引入web 和 thymeleaf ,正常执行,并做一个主页进行测试
2、本地引入jar包,在resources下新建lib ,并复制jar包

3、在启动类上,填写注解

4、正常执行,并访问jar中Configuration 中addResourceHandlers 配置的访问路径,就可以访问jar中的静态页面了

三、本地jar引入后打包注意事项

四、获取相关设置(简单通信)
1、InitListener
···
package com.juncheng.syc.listener;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.env.Environment;

public class InitListener implements ServletContextListener



···
2、设置 application.properties

以上是关于pb调用jar包的方法的主要内容,如果未能解决你的问题,请参考以下文章

C# 调用Jar包的方法

c#调用jar包的方法(超详细)

java中maven引用拥有同名方法的jar包的问题

求教usb的操作方法 关于 java.libusb-win32.jar包的问题

framework.jar 听说只能有65535个接口,并且不能调用其他JAR 包的接口?

jar嵌入静态资源 供引用调用