2010-08-25 185 views
0

我是eclipse + Java的新手。我正在嘗試使用eclipse 導出選項創建可執行jar文件。它工作得很好。但在我的項目中,我有近10個包(我自己的)和4個主要類。我想創建一個可執行的jar文件,它可以執行4個主類中的任何主類。Java Eclipse可執行文件jar文件

例如:雙擊寫類名和運行類

+0

您將如何確定要運行哪個類? – 2010-08-25 22:57:27

+0

如果我可以在運行時傳遞參數來告訴類名。可能嗎?我很抱歉我不是java嚮導:( – Tweet 2010-08-25 23:21:47

回答

1

只是如何處理命令行選項來啓動不同的東西一個簡單的例子,我將不得不把它變成一個回覆@ serplat的答案,但我就不能格式化。

public static void main(String[] args) 
{ 
    if(args.length == 0) { 
     // Do default here--no options specified 
    } else if(args.length > 2) { 
     // Complain that there are too many args, or implement multi-args 
    } else // known just one arg 
     if(args[1].equals("option1") { 
      // call the main of your first app 
     } else if(args[1].equals("option2") { 
      // start your second app 
     ... 
    } 
} 

有很多更好的方法來處理命令行的東西,但這是可以理解的,應該做你所需要的。稍後你可能會看到更靈活的東西。

2

可執行的JAR不工作的方式。他們在JAR中寫入一個清單文件,聲明主類的位置,並運行該文件。你將不得不創建4個不同的JAR。

或者,你可以創建一個主類,可以讓你鍵入要在其中,然後把它執行的是一個四的。基本上,你會模仿你正在尋找的功能。

+0

嗨,謝謝你的回覆。我試過你的解決方案。但是,我並不是專家做出這樣的晚餐的主要類。請問你能提供僞代碼嗎? – Tweet 2010-08-25 23:06:43

3

不使用可執行jar。相反,創建一個正常的jar,它將編譯類。

從命令行中,調用您想調用的任何主類作爲java jar命令的參數。

java -jar test.jar com.company.unit.MainClass1 

java -jar test.jar com.company.unit.MainClass2