2012-06-08 53 views
1

我正在使用Eclipse中的Hadoop項目,這取決於我的另一個項目;我在構建路徑中包含了其他項目,但是當我導出依賴項目時,它只包含來自同一項目的類。在我的jar包中使用Eclipse打包所有外部類

通常,這不會是一個問題,因爲我可以用-cp標誌鏈接另一個項目,但Hadoop要求您將jar作爲參數傳遞,這意味着我的所有依賴項必須位於該jar文件中。

在Eclipse中,有沒有一種方法可以自動構建和包含您所依賴的項目中的類?

謝謝。

回答

1

您coud使用Ant自動構建,測試和出口。它需要一些時間來學習它,但它的價值。 有可能的任務(文件集,zipgroupfileset,副本)包括文件,罐子(解壓縮)或任何東西到最後的罐子裏。通過這種方式,你明確地知道你的發行版裏面有什麼,並且你不需要運行eclipe安裝。

1

我建議你看看maven作爲構建工具。您可以在稱爲pom文件的文件中爲每個項目定義依賴關係和構建步驟。 Eclipse的maven插件(m2e插件)可以在pom文件中進行配置,並設置Eclipse構建路徑和項目描述,以便您可以在Eclipse中訪問其他項目中的類。 Maven也可以爲你創建一個包含兩個項目類的jar(一個「jar-with-dependencies」)。

在maven術語中,您的兩個項目被稱爲「工件」,其中一個對另一個有依賴性。

maven的一個缺點(以及對maven的許多負面評論的原因)是一個初步陡峭的學習曲線,可能令人沮喪。然而,你想要做的事情非常簡單,我希望你可以找到一些例子,告訴你你想要做什麼。

第一步,這就是我的答案是,看看maven。它可能看起來過於複雜,但它可以擴展以處理所需的任何構建配置,因爲您的hadoop應用程序變得越來越複雜。

相關問題