jar程序部署的外部依赖和按名传参和shellUtil传参json串及返回pid问题

这篇具有很好参考价值的文章主要介绍了jar程序部署的外部依赖和按名传参和shellUtil传参json串及返回pid问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

指定jar程序运行的外部依赖

nohup java -Djava.ext.dirs=./lib/ -cp DataSourceAccessPage.jar com.sitech.adapter.JsonAdapter arg0 arg1

java -cp 命令跟jar路径和指定的编译类(main)路径;

java -jar 跟jar路径也ok,但是需要打包的时候指定jar包里的 MANIFEST.MF 文件中 Main-Class项的值。即默认运行的main函数。

指定参数名称传参给程序

使用getopts命令。

getopts命令识别出各个入参选项之后(用:分隔),遍历case判断。其操作中,有两个"常量",一个是OPTARG,用来获取当前选项的值;另外一个就是OPTIND,表示当前选项在参数列表中的位移,反映下一个要处理的参数索引,初始值是1。

while getopts ":a:b:c:" opt
do
    case $opt in
        a)
        echo "参数a的值$OPTARG$OPTIND"
        ;;
        b)
        echo "参数b的值$OPTARG$OPTIND"
        ;;
        c)
        echo "参数c的值$OPTARG$OPTIND"
        ;;
        ?)
        echo "未知参数"
        exit 1;;
    esac
done

sh getTop.sh -b 2 -a 1 -c 3 -d 4
参数b的值2,3
参数a的值1,5
参数c的值3,7
未知参数

shellUtil命令传参JSON串

传参的json串:

String string ="[{\"nodeName\":\"cdrtype\",\"nodePath\":\"cdrinfo\"},{\"nodeName\":\"cdraddupid\",\"nodePath\":\"cdrinfo\"},{\"nodeName\":\"cdrcycleid\",\"nodePath\":\"cdrinfo\"}]";

String string ="{\"groupId\":\"test\",\"kafkaClusterUrl\":\"xxxxx:9092\",\"targetConnector\":\",,\",\"targetKafkaClusterUrl\":\"xxxxx:9092\",\"targetPartionNum\":\"2\",\"targetTopicNum\":\"2\",\"targetTopicPreName\":\"envent_topic_\",\"topics\":\"event_topic_2\"}";


jar程序部署的外部依赖和按名传参和shellUtil传参json串及返回pid问题,Linux,jar,shellUtil,shell,部署

shellUtil命令:

        // 命令接口参数
        shellCommand +=                
                  " \"" + jsonDsInfo.replaceAll("\"", "\\\\\"") + "\" "
                + " \"" + jsonFieldList.replaceAll("\"", "\\\\\"") + "\" "

否则会是: -cp xx xx “arg0” “arg1”

java的replaceAll要用四个反斜杠表示一个反斜杠因为replaceAll里面要提交给一次正则表达式。

shellUtil获取回调nohub启动程序后的pid

nohup java -version >tets.log & echo $!

在脚本中,$!代表最后执行的进程的PID。

https://codingdict.com/questions/42913 , 或者输入她到文件中,再cat出来

可选

nohup java -version >tets.log & echo $! cbry/tets.pid | cat cbry/tets.pid文章来源地址https://www.toymoban.com/news/detail-560328.html

到了这里,关于jar程序部署的外部依赖和按名传参和shellUtil传参json串及返回pid问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Java可执行命令】(五)打包部署工具 jar:深入解析应用程序打包、分发和部署工具jar ~

    Java的可执行命令程序 jar (Java Archive)最早作为一项功能在JDK 1.0中引入。它的 设计目的是为了方便在Java平台上进行打包、分发和部署应用程序 。 jar 文件可以将多个Java类、资源文件和其他依赖项打包成一个单独的归档文件,以实现更简单的应用程序管理和传输。 jar 文件是

    2024年02月11日
    浏览(70)
  • springboot项目引入外部jar包

    将下载或别人给的jar包放入到resources下新建的lib文件夹中 点击File -- Project Structure - Modules - Dependencies - + - JARs or dir… 选择第一步放好的两个jar包 使用来指定依赖项的本地路径。 system用于指定依赖项的作用范围(scope)为\\\"system\\\"。这意味着该依赖项是一个系统级别的依赖,它不

    2024年02月11日
    浏览(45)
  • java -jar指定外部配置文件

    spingboot项目部署jar时,需要时常修改配置,为了方便,将配置文件放到jar包外 在jar包同级目录下创建config文件夹(位置没有强制要求,为了方便而已) 在jar包同级目录下创建start.bat文件,并编辑内容 直接双击start.bat进行启动 启动jar之前设置参数 -Dspring.config.location 指向外部配置目录即

    2024年02月14日
    浏览(44)
  • SpringBoot日常:引入外部jar包

    我们开发中经常会遇到这样的场景,对接外部的应用接口,对方给了一个sdk,也就是一个jar包文件,此时需要引入即可调用封装好的方法。 最常解决的一个办法就是将这个jar包打包放入我们的仓库,不管是本地还是私服,这样就可以直接在pom文件引用。 1、进入jar包当前目录

    2024年03月24日
    浏览(52)
  • Maven 项目外部jar包导入

    目录 一、通过dependency引入 1.1. jar包放置,建造lib目录  1.2. pom.xml文件 二、将外部jar打入本地maven仓库 2.1. 将jar包放入某不含中文的路径下 ,例如:E:filezip4j-1.3.2.jar 2.2. 在jar包所在目录栏中输入cmd,并回车 2.3. 在命令行输入操作命令 2.4. 添加成功 2.5. pom.xml 导入 三、 mvn i

    2024年02月08日
    浏览(35)
  • Android系统部署java环境并运行Java程序执行jar包

    在Android系统中运行jar包可通过把jar转换为安卓系统可以执行的dex文件,从而运行java程序,但这种方法只不适用于复杂的框架,本篇讲述在Android设备中部署java环境并运行springboot项目。 为了运行更为复杂的java程序,可以在安卓设备中安装AidLux(国内软件)或Termux(国外软件),

    2023年04月22日
    浏览(55)
  • 外部配置文件和Class打包到jar 然后重新启动java -jar

    我这边以demo.jar和application-dev.properties配置文件为例 一.将Test1.class和Test2.class替换到jar内部 步骤1:解压原始demo.jar 将两个class文件拷贝到jar目录下后cd到文件目录执行: 步骤2:替换或添加class文件 步骤3:重新打包jar 二、优先加载外部的配置文件application-dev.properties,启动ja

    2024年01月19日
    浏览(38)
  • java启动jar包引入外部配置文件

    前提: 打出来的jar中已经包含了各个application-xxx.yml文件,jar所在位置也引入了外部的application-test.yml。 目的:运行时,希望使用的时外部 application-test.yml  文件。 使用了以下命令: 可以启动,但是,使用的时jar包里面的application-test.yml配置,而不是外部的application-test.yml文

    2024年02月12日
    浏览(43)
  • Maven 引入外部依赖

    如果我们需要引入第三方库文件到项目,该怎么操作呢? pom.xml 的 dependencies 列表列出了我们的项目需要构建的所有外部依赖项。 要添加依赖项,我们一般是先在 src 文件夹下添加 lib 文件夹,然后将你工程需要的 jar 文件复制到 lib 文件夹下。我们使用的是 ldapjdk.jar ,它是为

    2024年02月07日
    浏览(44)
  • 怎么给idea项目引入外部的jar包

      要将外部的 JAR 文件引入 IDEA 项目,可以按照以下步骤进行操作: 在 IDEA 中打开 项目。 将外部的 JAR 文件复制到项目的某个目录中,例如可以创建一个名为 \\\"lib\\\" 的文件夹用于存放外部库文件。 在 IDEA 中右键单击项目文件夹,然后选择 \\\"Open Module Settings\\\"(或者直接使用快捷

    2024年02月15日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包