簡體   English   中英

無法從Java運行乳膠的終端命令

[英]Unable to run terminal commands from Java for latex

乳膠文件: 0.tex內容:

\documentclass{article}  
\begin{document}
\begin{equation}
\frac{\partial p_{dyn}}{\partial n} = A
\end{equation}  
\end{document}

Shell文件: 0.sh內容:

latex /u/b/basnet/Desktop/0.tex
dvipng /u/b/basnet/Desktop/0.dvi

終端命令:

>chmod 755 /u/b/basnet/Desktop/0.sh
>/u/b/basnet/Desktop/0.sh

輸出:乳膠生成的圖像,Dvi和其他文件。 您可以在藍色窗口中看到。

在此處輸入圖片說明

問題:這僅通過終端起作用,而不是通過Java程序執行命令。

Java程序代碼:

Runtime.getRuntime().exec("chmod 755 /u/b/basnet/Desktop/0.sh");
Runtime.getRuntime().exec("/u/b/basnet/Desktop/0.sh");
System.out.println("Script executed successfully");

輸出:

run:
Script executed successfully
BUILD SUCCESSFUL (total time: 0 seconds)

我進行交叉檢查后,代碼的第一行(即使文件可執行)可以正常工作。 但是,通過Java運行時,腳本文件包含latex命令的第二行不起作用。 我需要通過我的程序生成這些文件。

我猜想這與環境有關,我對所有這些操作系統都不是很了解,但是我認為我有一個解決方案可以在您的PC上為您的示例工作:

您必須將程序的名稱更改為完整路徑,以供您在Shell文件中使用,因為Java運行時找不到它們。 例如:

/Library/TeX/texbin/latex /u/basnet/Desktop/0.tex

唯一出錯的是,輸出文件出現在tex文件所在位置的上方一個文件夾中,這意味着您必須更改輸出目標或dvi執行的行。

如果找不到程序的路徑,請打開bash並鍵入

which latex

which diving

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM