Skip to content

部署JAVA工具

当需要通过调用java程序进行处理并获取处理结果时,可以使用插件进行处理

场景示例

某国企提供了数据加解密的jar包,当无法使用代码块实现其加解密逻辑时,可以通过直接调用jar包获取加解密结果

1.创建配置文件:java.json

配置参数说明

bash
HTTP_PORT        # 【必填】http协议端口号
INSTANCE_NUM     # 【可选】服务实例数量,默认为1(数量越大并发处理能力越强,资源消耗越大,建议不要设置超过8)

文件内容示例

json
{
  "HTTP_PORT": 18088
}

1.1.一键创建

下方参数后,将其复制粘贴至命令行,敲击回车键即可

bash
cat > /etc/hzy/java.json <<- EOF
{
  "HTTP_PORT": 18088
}
EOF

如何验证执行结果?

命令行输入:cat /etc/hzy/java.json,后敲击回车键即可查看文件内容

1.2.手动创建

bash
cd /etc/hzy && vim -n java.json

注意

将使用vim编辑文件内容,点击查看vim的使用说明

2.运行JAVA服务

上传jar包

将需要执行的jar包上传至/etc/hzy/jars/目录下

提示

/etc/hzy/为会众云配置文件所在目录,需要在此目录下创建文件夹jars


启动服务

注意

以下参数:-p 18088:18088,为配置文件中定义的端口号

bash
docker run --privileged -e TZ=Asia/Shanghai -itd --restart always -p 18088:18088 -v /etc/hzy:/root/conf --name hzy-java swr.cn-southwest-2.myhuaweicloud.com/hzy0code/hzy-utils:java.x86.1.1.0

重启服务

注意

修改了配置文件后,需要使用以下命令重启服务

bash
docker restart hzy-java

3.执行并获取返回值

接口描述

  • 方法: POST
  • URL:/exec_java
  • 参数
    • jarName:步骤2中上传的jar包的名字
    • args:执行jar的附加参数列表
    • javaVersion:java的版本(包括:8、11、17、21)
  • 返回:成功返回执行结果

请求示例

POST http://192.168.123.1:18088/exec_java

json
{
  "jarName": "xample.jar",
  "args": [],
  "javaVersion": "17"
}