java和bat相互调用

1.bat 启动java main函数

1.将project导出JAR,过程中注意选择main class

2.新建bat,设置环境变量

3.1启动程序,如果想在黑窗口中打印数字,可以system.out,程序运行万

@echo off
@setlocal

set JAVA_HOME=jdk1.6.0_25
set PATH=%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

java -jar start.jar
或者直接调用class文件

@echo off
@setlocal

set JAVA_HOME=..\jdk1.6.0_25
set PATH=%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

java usb/CreateStartBat


2.java调用bat

String cmd = "cmd /c start  " +
				desDisk +
				":\\server\\start.bat";
		Runtime rt = Runtime.getRuntime();
		try {
			rt.exec(cmd);
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
3.若有需要传参数可以新建文件“xxx.bat”

	public static void CreateBat(){

		String desDisk = DiskUtil.getDesDisk();
		String diskid = System.getProperty("user.dir").split(":")[0];//程序所在盘
		System.out.println(desDisk+diskid);
		
		File file = new File(desDisk+"://"+COPY_FOLDER+"//"+FILE_NAME);
		 FileWriter fw = null;  
		try {
			File file2 = new File(desDisk+"://"+COPY_FOLDER);
			if(!file2.exists()){
				file2.mkdir();
			}
			
			file.createNewFile();
			fw = new FileWriter(file);  
			fw.write("@echo off\r\n"); 
			fw.write("@setlocal\r\n");  
			fw.write("set JAVA_HOME=" +	diskid +":jdk1.6.0_25\r\n");  
			fw.write(" set PATH=%JAVA_HOME%\\bin;%JAVA_HOME%\\jre\\bin \r\n");  
			fw.write("echo %~d0\r\n");  
			fw.write("%~d0\r\n");  
			fw.write("cd %~dp0\r\n");  
			fw.write("set JAVA_OPTIONS=%JAVA_OPTIONS% -server\r\n");  
			fw.write("set JAVA_OPTIONS=%JAVA_OPTIONS% -Xmx512m\r\n");  
			fw.write("set JAVA_OPTIONS=%JAVA_OPTIONS% -XX:MaxPermSize=128m\r\n");  
			fw.write("set JAVA_OPTIONS=%JAVA_OPTIONS% -Djava.io.tmpdir=tmp\r\n");  
			fw.write("set JAVA_OPTIONS=%JAVA_OPTIONS% -Dderby.system.home=derby\r\n");  
			fw.write("set OSGI_OPTIONS=%OSGI_OPTIONS% -Dosgi.configuration.area=osgi-config\r\n");  
			fw.write("set OSGI_OPTIONS=%OSGI_OPTIONS% -Dosgi.noShutdown=true\r\n");  
			fw.write("set OSGI_OPTIONS=%OSGI_OPTIONS% -Dosgi.install.area=./\r\n");  
			fw.write("echo 启动时JAVA配置: %JAVA_OPTIONS%\r\n");  
			fw.write("echo 启动时OSGI配置: %OSGI_OPTIONS%\r\n");  
			fw.write("echo 启动参数: %1 %2 %3 %4\r\n");  
			fw.write("java %JAVA_OPTIONS% %OSGI_OPTIONS% -jar core/org.eclipse.osgi_3.3.1.R33x_v20070828.jar -clean -consoleLog %1 %2 %3 %4");  
			
			
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} finally {   

            try {   

                fw.close();   


            } catch (Exception e) {   

                e.printStackTrace();   

            }   

        }   

	
	}



  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值