gpt4 book ai didi

java - 执行批处理文件错误 : "Could not find or load main class"

转载 作者:搜寻专家 更新时间:2023-11-01 03:18:20 26 4
gpt4 key购买 nike

我是java编程的新手。我有这个名为 StartSample.bat 的批处理文件。这个批处理文件运行一个 java 程序。这是批处理文件的代码:

@echo off
set CLASSPATH=%CLASSPATH%;f3bc4jav.jar
set CLASSPATH=%CLASSPATH%;PalmSecureSample_Java.jar

@echo on
java <classname>

上面提到的.jar 文件与批处理文件在同一个文件夹中。

当我运行 StartSample.bat 时,它会正常执行 Java 程序。

现在我所做的是创建 Java 类来使用以下代码运行该批处理文件:

Process p = Runtime.getRuntime().exec("C:\\WINDOWS\\system32\\cmd.exe /c start C:\\Identify\\dll\\StartSample.bat");

错误发生在我运行我的代码时。错误是:

C:workspace\Project>java <classname> Error: Could not find or load main class <classname>

似乎是什么问题?

最佳答案

如果您从 Java 类运行批处理文件,则批处理文件的工作目录将由您的 Java 环境的工作目录继承。

要修复它,您应该使用 %~dp0 设置您的 jar 相对于批处理文件的路径:

@echo off
set CLASSPATH=%CLASSPATH%;%~dp0\f3bc4jav.jar
set CLASSPATH=%CLASSPATH%;%~dp0\PalmSecureSample_Java.jar

@echo on
java <classname>

关于java - 执行批处理文件错误 : "Could not find or load main class",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39899609/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com