首先写一个java的main函数
必须是main函数才可以运行

public class ScriptTest {

	public static void main(String[] args) {
		// 通过脚本传进来的第一个参数
		System.out.println(args[0]);
		// 通过脚本传进来的第二个参数
		System.out.println(args[1]);
		// 通过脚本传进来的第三个参数
		System.out.println(args[2]);
	}
}

接下来是脚本(模板),必须保证本机配置了java的环境变量

@echo off //这是关掉回显,就是输出的信息不会显示2次,关掉的是系统自带的输出信息,只显示我们写的输出的信息
java -jar 包名.jar 参数1 参数二 参数三   //每个参数之间要有空格 ,最好不要有中文,会乱码,但是也有设置脚本参数防止乱码,自行百度
pause // 这个是控制cmd控制台不会在运行之后自动关闭,可以自己手动关闭cmd控制台

这是真正的我用来测试的脚本。script.bat,新建文件的后缀是bat或者cmd(windows是bat,linux是sh)

@echo off
java -jar script.jar param1  param2 param3
pause

然后就是把刚才写的java工程导成jar包

、导出之前,先要做的是运行我们刚才写的main函数

、这步很重要,只有运行过,eclipse才能导出–可运行jar。只要运行就可以,不管报错不报错

java 执行jar文件带参数报错 执行jar包并传参数_java 执行jar文件带参数报错


开始导出

java 执行jar文件带参数报错 执行jar包并传参数_jar_02

java 执行jar文件带参数报错 执行jar包并传参数_java_03


java 执行jar文件带参数报错 执行jar包并传参数_jar_04

导出的jar如下图所示

java 执行jar文件带参数报错 执行jar包并传参数_java 执行jar文件带参数报错_05


META-INF的内容如下,最好不要自己手动修改,这个文件有一定的规则。如果有引用外部jar包,在这个文件里面也有体现,我的测试是没有引用外部jar包

Manifest-Version: 1.0
Class-Path: .
Main-Class: script.ScriptTest

最后双击我们刚建成的script.bat,运行如下所示

java 执行jar文件带参数报错 执行jar包并传参数_jar_06


注意:script.bat和jar包必须在同一个目录才行

java 执行jar文件带参数报错 执行jar包并传参数_jar_07


小彩蛋:script.bat可以创建快捷方式,可以把创建出的快捷方式,随意的单独的移动到自己想放的目录,其他好多软件好像原理类似

java 执行jar文件带参数报错 执行jar包并传参数_cmd_08