Bagaimana cara menjalankan baris perintah Shell di dalam Java swing?

pemrograman


Saya seorang programmer pemula java di Debian Linux 12 (Nanti mungkin juga di FreeBSD 14) dan saya ingin membuat aplikasi kecil peluncur Java Swing untuk meluncurkan beberapa server web java seperti Jetty, Glassfish dan Wildfly untuk pengembangan web dan menjalankan beberapa HTML 5 templat (untuk menguji cara menjalankannya di setiap Server Web Java). Saya menemukan dua kode sumber Java (satu untuk membuat antarmuka Java Swing dan satu lagi untuk menjalankan skrip unix shell) satu-satunya hal adalah saya tidak tahu caranya untuk mengintegrasikan atau cara membuat java untuk menjalankan perintah unix di dalam aplikasi Java Swing. Apakah mungkin untuk itu? dan juga apakah ada cara untuk membuat tombol baru untuk menghentikan proses Peluncur Server Java? , berikut kode Java Server Launcher :

Jawa
import java.awt.*;
import javax.swing.*;

public class JavaServerLauncher {

    static JFrame frame;
    static JPanel panel, panelData;
    static JMenuBar menuBar;
    static JMenu menuFile, menuSetting, menuOption;
    static JMenuItem itemNew, itemOpen, itemSave, itemPrint, itemOption, itemClose, itemView, itemReports;
    static JToolBar toolBar;
    static Icon iconMenu = UIManager.getIcon("html.pendingImage");
    static JButton barSave, barEdit, barClear, barDelete;
    static ButtonGroup group;
    static JRadioButtonMenuItem subFont1, subFont2, subFont3, subFont4, subFont5;
    static JCheckBoxMenuItem checkPrefer;
    static JLabel label;
    static JTextField textFirst, textMiddle, textLast;
    static JCheckBox checkGender;

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {

            @Override
            public void run() {
                gui();
            }
        });
    }

    public static void gui() {

        frame = new JFrame("Java Server Launcher for Debian Linux");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(550, 300);

        JavaServerLauncher myMenu = new JavaServerLauncher();
        myMenu.myMenuBar();
        myMenu.myToolBar();
        frame.setJMenuBar(menuBar);
        frame.add(toolBar, BorderLayout.SOUTH);

        frame.pack();
        frame.setVisible(true);
    }

    public void myToolBar() {

        toolBar = new JToolBar(JToolBar.HORIZONTAL);
        frame.add(toolBar);


        barSave = new JButton("Apache TomCat", iconMenu);
        toolBar.add(barSave);

        barEdit = new JButton("Jetty Server", iconMenu);
        toolBar.add(barEdit);

        barClear = new JButton("GlassFish 7", iconMenu);
        toolBar.add(barClear);

        barDelete = new JButton("Wild Fly", iconMenu);
        toolBar.add(barDelete);
        
        barDelete = new JButton("Turn Off", iconMenu);
        toolBar.add(barDelete);
    }

    public void myMenuBar() {
        menuBar = new JMenuBar();
        frame.setJMenuBar(menuBar);

    }
}

Apa yang saya coba:

Saya telah memeriksanya di Google di beberapa halaman web tetapi tidak menjawab, beberapa pengguna memberi tahu saya Process Builder tetapi saya tidak dapat menemukan kode sumber apa pun dengan Process Builder dengan Java Swing.

Solusi 1

Seperti yang sudah disarankan kepada Anda, Anda perlu menggunakan Pembangun Proses (Java SE 18 & JDK 18)[^]. Dokumentasi menunjukkan cara membuat perintah dan menggunakan ini serta kelas terkait untuk memulainya. Dan berikut tutorial dengan contoh kodenya: https://www.baeldung.com/java-lang-processbuilder-api[^].

コメント

タイトルとURLをコピーしました