[亲测有效]BAT批处理脚本执行Jar包,使用自带Java环境Jre

简介: 写好了一个jar包,使用了Java8的新特性,需要发布给客户,考虑到客户并不一定会使用Java8,所以就把JRE8一起发布了,分为Windows和Linux两个版本,各自写了一个脚本来运行。

问题场景


写好了一个jar包,使用了Java8的新特性,需要发布给客户,考虑到客户并不一定会使用Java8,所以就把JRE8一起发布了,分为Windows和Linux两个版本,各自写了一个脚本来运行。


脚本

Windows:


client.bat

@echo off
rem The running environment of test.jar is jdk1.8 at least.
if "%OS%" == "Windows_NT" setlocal
rem ---------------------------------------------------------------------------
rem Start script for the xxx client
rem ---------------------------------------------------------------------------
set "CURRENT_DIR=%cd%"
set "JRE_HOME=%CURRENT_DIR%"
if exist "%JRE_HOME%\jre\bin\java.exe" goto okHome
cd ..
set "JRE_HOME=%cd%"
cd "%CURRENT_DIR%"
:okHome
set "EXECUTABLE=%JRE_HOME%\jre\bin\java.exe"
rem Check that target executable exists
if exist "%EXECUTABLE%" goto okExec
echo Cannot find "%EXECUTABLE%"
echo This file is needed to run this program
goto end
:okExec
rem Get remaining unshifted command line arguments and save them in the
set CMD_LINE_ARGS=
:setArgs
if ""%1""=="""" goto doneSetArgs
set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1
shift
goto setArgs
:doneSetArgs
cd jre\bin
java -jar %JRE_HOME%\test.jar %CMD_LINE_ARGS%
:end

Linux:


client.sh

#!/usr/bin/env bash
# This is a shell for running test.
var="test"
dir=`pwd`
if [ ${var} = ${dir##*/} ];
   then
      ./jre/bin/java -jar ${dir}/test.jar "$@"
else
    echo "U should enter in directory ${var}, and type ./start.sh parameterlist"
fi

注意


jre/bin目录需要替换成自己本地jre目录文件夹名称


test.jar需要修改成自己工程的jar包名称


参考https://blog.csdn.net/sand_clock/article/details/72520452


相关文章
|
2月前
|
Java 测试技术
抖音点赞脚本,直播间作品批量点赞,jar插件代码分享
实现使用了Selenium WebDriver自动化测试框架来模拟浏览器操作。代码包含登录功能
|
1月前
|
安全 Oracle Java
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
164 0
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
|
2月前
|
Java 数据安全/隐私保护
阿里旺旺群发器,淘宝阿里旺旺私信群发工具,卖家自动发私信脚本【jar源码】
这段代码实现了一个模拟的阿里旺旺群发工具框架,包含核心发送功能、配置管理和联系人管理模块
|
3月前
|
XML JSON 监控
抢单脚本插件辅助,T3出行曹操阳光高德网约车滴滴,jar开发移动端
完整的GUI界面、系统托盘支持、配置管理、声音提醒和震动提醒功能。主程序通过MonitoringThread定期检查
|
4月前
|
Java Linux
自定义linux脚本用于快速jar包启动、停止、重启
自定义linux脚本用于快速jar包启动、停止、重启
252 29
|
3月前
|
文字识别 监控 Java
顺丰同城抢单辅助脚本,顺丰骑士抢单辅助免封号,自动抢单神器【java版开源】
这是一套OCR实时检测订单列表并自动右滑的完整代码方案,适用于学习研究。代码包含四个主要模块:OCR处理(文字识别)、价格分析
|
5月前
|
Java 关系型数据库 MySQL
Java汽车租赁系统源码(含数据库脚本)
Java汽车租赁系统源码(含数据库脚本)
95 4
|
10月前
|
数据采集 分布式计算 Java
Kettle的Java开发环境需要什么jar包?
【10月更文挑战第24天】Kettle的Java开发环境需要什么jar包?
385 2
|
11月前
|
运维 Java Linux
【运维基础知识】Linux服务器下手写启停Java程序脚本start.sh stop.sh及详细说明
### 启动Java程序脚本 `start.sh` 此脚本用于启动一个Java程序,设置JVM字符集为GBK,最大堆内存为3000M,并将程序的日志输出到`output.log`文件中,同时在后台运行。 ### 停止Java程序脚本 `stop.sh` 此脚本用于停止指定名称的服务(如`QuoteServer`),通过查找并终止该服务的Java进程,输出操作结果以确认是否成功。
607 1
|
11月前
|
Java Python
如何通过Java程序调用python脚本
如何通过Java程序调用python脚本
329 0