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();   

            }   

        }   

	}

java和bat相互调用

时间: 2024-10-09 14:57:28

java和bat相互调用的相关文章

java 与 R 相互调用

https://www.r-project.org/ http://cos.name/2013/08/r-rjava-java/ http://blog.csdn.net/hwssg/article/details/39177959 目录 rJava介绍 rJava安装 rJava实现R调用Java rJava(JRI)实现Java调用R (win7) rJava(JRI)实现Java调用R (Ubuntu) 1. rJava介绍 rJava是一个R语言和Java语言的通信接口,通过底层JNI实

Java构造方法的相互调用

在Java中,如果类的一个构造方法想要调用另一个构造方法,需要用this(参数列表)的形式来调用. public class Student { String name; int age; public Student(int age) { this("Jack",age); } public Student(String name, int age) { this.name = name; this.age = age; } }

android WebView java与js相互调用

android webView js 使用1.js调用java    1.1 js代码    <script type="text/javascript">        function call(){            window.androidInterface.call('02585818031');        }    </script> 1.2.java代码    package com.example.webview;    import

Python与Java之间的相互调用——Jython

概述: Jython 是一种可以把两种不同的编程语言结合在一起的工具.首先,它使Python 程序员介入到Java 开发环境并让他们能快速开发方案原型,以便无缝地集成到现有的Java 平台上.其次,它能在Java 中加入脚本语言,并以此来简化数计百万计的Java 程序员的工作.Java 程序员们,再也不用为他们刚写的一个类写一大堆的测试用例或驱动程序.Jython 提供了Python 的大部分功能,以及实例化Java 类并与Java 类交互的功能.Jython 代码被动态地编译成Java 字节码

JAVA与.NET的相互调用——通过Web服务实现相互调用

JAVA与.NET是现今世界竞争激烈的两大开发媒体,两者语言有很多相似的地方.而在很多大型的开发项目里面,往往需要使用两种语言进行集成开发.而很多的开发人员都会偏向于其中一种语言,在使用集成开发的时候对另一种语言感觉到畏惧.在这里在下向各位介绍一下,JAVA与.NET相互调用的例子.下面的介绍主要包括三方面:一是通过常用Web服务进行相互调用,二是使用TCP/IP套接字进行相互调用,三是使用Remote实现远程对象相互调用. 在这章里面先为大家介绍一下最简单,最常用的Web服务相互调用方式.首先

Hybrid App开发模式中, IOS/Android 和 JavaScript相互调用方式

IOS:Objective-C 和 JavaScript 的相互调用 iOS7以前,iOS SDK 并没有原生提供 js 调用 native 代码的 API.但是 UIWebView 的一个 delegate 方法使我们可以做到让 js 需要调用时,通知 native.在 native 执行完相应调用后,可以用stringByEvaluatingJavaScriptFromString 方法,将执行结果返回给 js.这样,就实现了 js 与 native 代码的相互调用.具体让 js 通知 na

JAVA与.NET的相互调用——利用JNBridge桥接模式实现远程通讯

分布式开发的历史 利用Remote方式调用远程对象实现服务器与客户端之间通讯是一种常用的网络开发方式,在.NET与JAVA开发当中,对Remote远程对象早已有着足够的支持(对Remote远程对象调用有兴趣的朋友欢迎参考一下利用远程对象实现分布式开发). 从2003年开始.NET当中就盛传着.NET Remoting远程对象调用的分布式开发,.NET Remoting主要用于管理跨应用程序域的同步和异步RPC 会话.在默认情况下,Remoting可以使用 HTTP 或 TCP 协议进行信息通讯,

java JNI 的实现(2)-java和C/C++的相互调用.

目录 概述 一,java代码 二,稍微注意通过javah生成的'C/C++'.h头文件和源java代码的关系 三,在C/C++中实现java的native方法(完整C/C++) 1,修改age,即Java_juk_demo_JSay_changeAge方法 2,调用java中的'javaStatic'方法,和上面C/C+实现方法相似 3,最后测试 概述 从第一篇java JNI 的实现(1)-又进一步加深对JVM实现的理解对JNI有了大致的理解之后,并知道JNI中java如何调用C/C++等,这

.Net 与 Java 的服务接口相互调用

本文介绍.Net 与 Java 相互调用的例子.下面的介绍主要包括三方面:一是通过常用Web服务进行相互调用,二是使用TCP/IP套接字进行相互调用,三是使用Remote实现远程对象相互调用. 首先说一下Web服务的来源,Web服务是一种新的Web应用程序分支,可以执行从简单的请求到复杂商务处理等任何功能.一旦部署以后,其他Web服务应用程序可以发现并调用它部署的服务. Web Service是一种应用程序,它可以使用标准的互联网协议,像超文件传输协议(HTTP).简单对象访问协议(SOAP).