簡體   English   中英

使用命令行界面應用程序作為庫

[英]Using command line Interface app as library

我想在Java中創建一個GUI應用程序來簽署由JadTool.jar完成的j2me應用程序,但這是一個命令行界面應用程序。 所以我只想將其用作庫並在程序中傳遞參數。 怎么做?

簽出運行時 它將允許您執行命令。 您可以使用它來啟動命令行界面庫。

編輯:啊,我沒有仔細閱讀護理。 如果您使用的是Java庫,則啟動單獨的過程不是最佳解決方案。

只需引用您項目中的JadTool jar。 如果庫中無法訪問所需的功能,請編輯源代碼並重新編譯。 確保JadTool的許可證允許這樣做。

如果您反對編輯源代碼(或不允許這樣做),請嘗試使用反射來調用所需的私有運行方法。

jar只是類的庫,它可以從命令行運行的事實是由類中存在main方法引起的。 由於jadtool的源可用,因此很容易看到其非常簡單的主體:

public static void main(String[] args) {
    int exitStatus = -1;

    try {
        new JadTool().run(args);
        exitStatus = 0;
    } catch (Exception e) {
        System.err.println("\n" + e.getMessage() + "\n");
    }

    System.exit(exitStatus);
}

不幸的是,該run()方法是私有的,因此無法直接從另一個類調用它,從而減少了選項集:

  1. @WilliamMorrison的通過運行時進行的解決方案-並不是真正的庫調用,但它可以工作。
  2. 看到有什么方法可以調用私有方法嗎?

暫無
暫無

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

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