从批处理文件运行编译的Java类

时间:2016-01-12 13:38:59

标签: java batch-file cmd

我正在尝试打包Java应用程序,以便可以从批处理文件运行,我在目录中使用JRE,我当前的批处理文件(run.bat)如下所示:

.\program\jre8\bin\java.exe -cp ..\ mainUI
pause

我的文件结构如下:

Folder
    /program
        /jre8
            ...JRE in here...
        mainUI.class
        ...Other Classes in Here...
    run.bat

当它运行时它说它找不到mainUI类,任何人都可以帮助诊断吗?

谢谢, 哈里斯米尔扎

3 个答案:

答案 0 :(得分:0)

根据给出的目录结构,您的类路径不在“../”中,而在“./program”中。试试.\program\jre8\bin\java.exe -cp ./program/* mainUI

答案 1 :(得分:0)

您的类路径是相对于您的工作目录(双击它时批处理文件所在的目录)。您应该将其更改为java -cp program mainUI,因为您的run.bat似乎位于您的程序文件夹上方。

当您使用套餐时,请尝试

F454 / mainUI.java

package F454;

public class mainUI {
    public static void main(String[] args) {
        System.out.println("Hello World");
    }
}

的run.bat

jre\bin\java.exe -cp . F454.mainUI
pause

和这个结构

/program
    /jre
    /F454
        mainUI.class
    run.bat

答案 2 :(得分:0)

感谢所有帮助,我现在已经解决了这个问题。 我的批处理文件如下所示:

cd ./program/F454FinalProject
..\jre8\bin\java.exe F454.mainUI
pause

我的文件结构是这样的:

Folder
    /program
        /jre8
            ...JRE in here...
        /F454FinalProject
            /F454
                mainUI.class
                ...Other Classes are here...
    run.bat