我的问题分为两部分。
我正在编写一系列乳胶文件,我想编译它们。
如果我手动输入,该命令有效。所以语法应该是正确的。但是当我从java应用程序运行它时,它将无法编译。
这段代码在Java中正确地创建了一个乳胶文件 - 正如预期的那样。
File latexFile = fileChooser.showSaveDialog(window.stage);
if (latexFile != null) {
try {
writeContentToFile(content, latexFile);
} catch (IOException ex) {
Logger.getLogger(DocumentViewPort.class.getName()).log(Level.SEVERE, null, ex);
}
}
如果我输入pdflatex
,我可以在命令行中编译生成的文件,然后添加文件路径并获得PDF file
。
但是从java本身开始这样做似乎不起作用:
try {
Runtime.getRuntime().exec( "pdflatex " + latexFile.getPath());
} catch (IOException ex) {
Logger.getLogger(FileAndContentCreation.class.getName()).log(Level.SEVERE, null, ex);
}
任何想法为什么? 我尝试在很多地方在线阅读,我不知道哪个部分是有问题的。任何帮助将不胜感激。感谢。
我的第二部分问题是更改目录,我正在使用:
Runtime.getRuntime().exec( "cd " + myNewdirectory.getPath());
但它以error=2
如何更改当前目录?