我想知道是否可以将批处理文件与我的 java 应用程序一起“打包”(作为单个 jar)。我的应用程序执行一个批处理文件,因此硬编码我不得不编写批处理文件的路径。我担心的是我希望我可以调用批处理文件,而无需更改我部署我的应用程序的每台机器的路径......使用 Eclipse 作为 IDE。
这是我的代码,它工作正常,但正如我所说,我喜欢调用批处理文件,例如作为普通的 java 类导入......
public class LogFileScanner
{
private final String dir_of_log = "<My Directory>";
private final String dir_of_batch = "<My Directory>\\Java_Tools";
private final int toGigaByte = (1024*1024)*1024;
private double size_in_GIGA;
private String cur;
.
.
.
try
{
Runtime.getRuntime().exec("cmd /c start DailyAuto2.bat", null, getBatchFile());
}
.
.
.
private File getBatchFile()
{
File batchFile = new File(dir_of_batch);
return batchFile;
}
}
非常感谢您提供的任何意见。
通过使用以下解决了我的问题:
private File getBatchFile()
{
dir = LogFileScanner.class.getResource("DailyAuto2.bat").toString();
dir = dir.replace("/", "\\\\");
dir = dir.substring(7, dir.length()-16);
File batchFile = new File(dir);
return batchFile;
}