2017-07-18 89 views
0

我有一個現有的非常大量的.jar文件,如果出現任何異常,我應該趕上,然後需要調用不同的.jar文件。這可以通過捕獲異常並設置退出碼然後檢入批處理文件來完成,但是有大量的.jar文件。如果jar文件拋出異常,如何在批處理文件中處理.jar文件的輸出(在System.exit()中沒有任何退出碼)?

JAR文件看起來是這樣的:

public class FileProcessor{ 
    public static void main(String[] args){ 
     try{ 
     }catch(Exception ex){ 
     //if error occurs, a mail gets send 
     } 
    } 
} 

有不改變.jar文件,只是在批處理文件運行任何替代方法。

+0

請參閱對此問題的評論:https://softwareengineering.stackexchange.com/questions/20573/why-does-java-exit-with-success-after-an-uncaught-exception –

+0

例外情況打印出錯流,所以你可以檢查有沒有東西。 – npocmaka

回答

0

我相信從批處理文件中做到這一點並不重要。

但是,可能有一種方法可以在不編輯Java的情況下執行此操作。您可以從另一個Java應用程序中調用它,而不是直接從批處理文件調入jar,而是使用反射來覆蓋具有需要設置退出代碼的catch塊的方法。

這可能比您的建議更多的工作,您可能會更好地編輯現有的Java,使其按照您想要的退出代碼行事。

相關問題