2012-09-27 18 views
-2

我將服務器和客戶端代碼保存在Eclipse的同一項目中。包括他們兩個的圖書館。客戶端的圖像也被添加到構建路徑中。在Eclipse中根據配置文件在不同的jar中構建相同的項目

現在我想爲服務器和客戶端生成jar包,它們僅包含必需的庫,而服務器jar沒有包含圖像。

有沒有辦法做到這一點,而沒有maven等?

+1

我會建議考慮有3個不同的項目,服務器,客戶端和任何共享組件。然後,客戶端和服務器可能對共享庫有依賴性。 – eis

回答

1

可以在同一項目內將您的來源分爲三個源(輸出)文件夾:

  • SRC共享
  • SRC-服務器
  • SRC-客戶

然後創建一個build.xml(Ant構建文件),它將從bin-shared + bin-server創建一個罐子,並從bin-shared + bin-client


注:保持它在同一項目中的一個危險是,你可以不小心使用客戶端類從服務器類,反之亦然,這將在運行時失敗。要解決此問題,請製作三個項目而不是三個源文件夾。

2

右鍵單擊項目並轉到導出。從選擇樹中選擇jar並在下一個選項卡中,刪除不想包含在jar中的代碼/資源。更好的是,如果你把它們放在單獨的項目中(即使沒有客戶端java代碼,你也可以創建一個資源項目)。

但是,您所描述的內容聽起來很像WAR文件。與jar相反,WAR文件是一個可部署的jar,旨在將其添加到網絡託管應用程序,如Tomcat。我不知道這是否適合您的需求,但通常情況下,您希望將服務器和客戶端代碼放在一起。如果您的項目依賴於另一個項目,該項目將自動創建一個將包含在WAR中的jar。

+0

我之前只嘗試過Jar Executable File,所以沒有選擇。在Jar文件中,有資源的選擇,對。現在我需要一種方法來保留相同的配置以備後用。 –

+0

我認爲這完全不符合個人資料。儘管可能會帶來很大的痛苦,但我認爲最好將項目進行必要的重組,以使其在所有情況下都能正常工作,這意味着以更傳統的方式進行工作。 – Neil

相關問題