簡體   English   中英

我如何在 java 中啟動 GUI 終端並在其上運行命令

[英]How do i launch a GUI Terminal and run commands on it in java

我有一個程序,當你雙擊它時它就會運行。 我想做的是:

雙擊一個 jar 文件

在此處輸入圖像描述
啟動一些 GUI 在此處輸入圖像描述 並通過 java 程序在終端中運行命令

在此處輸入圖像描述

(只是一個例子,這不是我想做的)

我試過這個:

public class Main{
    public static void main(String [] args){
        Runtime.getRuntime().exec("/bin/bash sudo SOME_COMMAND_HERE");
    }
}

SOME_COMMAND_HERE只是一個替代品)

它沒有啟動終端。

(我有 GUI 部分,所以不需要為此編寫代碼)

那我該怎么做呢? 在過去的一兩天里,我一直在尋找有關堆棧溢出和密集谷歌搜索的答案。 加上我需要它的原因是因為我想向用戶展示一些進展並在運行 sudo 命令時輸入密碼。

有人可以幫忙嗎? 提前致謝。

在您的示例中,該過程可能會卡住,因為您沒有讀取它的 stdout 和 stderr 流。 流程文檔中:

由於一些原生平台只為標准輸入和output流提供了有限的緩沖區大小,如果不能及時寫入進程的輸入stream或讀取進程的output stream可能會導致進程阻塞,甚至死鎖。

所以本質上你只是在問如何從 Java 執行一個進程。對於用戶來說你的程序會顯示一個類似終端的用戶界面是無關緊要的。 知道這一點,我們可以改寫您的問題並找到答案,例如

暫無
暫無

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

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