通过批处理脚本执行java程序

时间:2011-09-09 08:51:02

标签: java jar batch-file

我有一个java类“Test.java”,其中包含某些代码。

public class Test {

public static void main(String[] args) throws Exception {
    testMount();
}

public static void testMount() throws Exception {
    System.out.println(System.getProperty("os.name"));
    //Windows
    String volumeToMount = "\\\\?\\Volume{****-****-******-********}\\";
    String mountPoint = "C:\\temp\\";

    mountFileSystem("", "", volumeToMount, mountPoint); //This carries out the operation        
}
}

我已经在Linux操作系统中编译了代码。我想通过批处理脚本(.bat文件)运行已编译的代码。我怎么做?那是什么语法?如果我必须添加一些外部jar,我在哪里以及如何在.bat文件中的语法中插入它们?

2 个答案:

答案 0 :(得分:3)

这是一个bat文件的例子,用于从带有外部jar的jar执行java代码:

@echo off

if "X%JAVA_HOME%" == "X" goto setjavahome
goto setup

:setjavahome
rem #### MODIFY ##########
set JAVA_HOME=c:\program files\javasoft\jre\1.2
rem #######################

:setup
set JNDI_LIB=lib\ldap.jar;lib\jndi.jar;lib\providerutil.jar;lib\ldapbp.jar
set JSSE_LIB=lib\jsse.jar;lib\jnet.jar;lib\jcert.jar

set COMMON=.;%JNDI_LIB%;%JSSE_LIB%
set EXEC=browser.jar lbe.ui.BrowserApp

set CMD="%JAVA_HOME%\bin\java" -cp %COMMON%;%EXEC%

echo %CMD%
%CMD%

答案 1 :(得分:0)

.bat适用于Windows;尝试将Windows中的Java代码编译为EXE(使用外部库,如galchen所建议的),并将EXE名称与相关/绝对路径一起添加到批处理文件中。

例如,输出EXE命名为test.exe,批处理文件应包含:

START C:\PATH\TO\YOUR\EXE\test.exe

编译EXE的优势主要在于性能。