簡體   English   中英

在Android Studio中生成Jar文件

[英]Generating Jar file in Android Studio

我在Android Studio中有一個庫項目。 我想為這個庫生成一個.jar文件。 我需要jar file contain/include all the dependencies此庫項目所具有的jar file contain/include all the dependencies

問題是我找不到生成jar文件的方法。 有什么辦法可以為我的項目生成一個jar文件嗎?

最好的祝福

以下Gradle任務的示例,該任務從classes.jar創建.jar

classes.jar文件可以在/build/intermediates/exploded-aar/文件夾中找到。

編輯:為每個Android Librar項目創建jar文件並單獨分發。 庫項目所需的依賴項如何 - 在最終項目中添加這些依賴項,將使用您的庫。

例如:您的Android Library項目MyLibProject ,它在build.gradle具有以下依賴build.gradle

dependencies {
    compile "com.android.support:support-v4:19.+"
}

當您構建項目時,您將獲得MyLibProject classes.jar ,而那些classes.jar將只包含來自庫項目的類,但不包含來自com.android.support:support-v4:19.+

之后,在另一個項目中添加classes.jar在庫相關build.gradle也定義相同的依賴在MyLibProject

如果你還需要fatJar ,請看這里如何使用Gradle創建fatJar

如果您在Gradle中將代碼設置為普通Java模塊,那么讓Gradle為您提供包含內容的jar文件非常容易。 該jar文件只包含您的代碼,而不是它依賴的其他Apache庫。 我建議這樣分發; 將依賴項捆綁到庫中是有點奇怪的,這些庫的用戶必須自己包含這些依賴項更為正常(因為否則這些項目的沖突已經鏈接了庫的副本,可能是不同的版本)。 更重要的是,如果您要發布圖書館,可以避免重新分發其他人的代碼時出現潛在的許可問題。

將需要編譯的代碼轉換為jar,並將其移至Android Studio中的單獨普通Java模塊:

File menu > New Module... > Java Library
Set up the library, Java package name, and class names in the wizard. (If you don't want it to create a class for you, you can just delete it once the module is created)
In your Android code, set up a dependency on the new module so it can use the code in your new library:
File > Project Structure > Modules > (your Android Module) > Dependencies > + > Module dependency. See the screenshot below: 

在此輸入圖像描述

從出現的對話框的列表中選擇您的模塊:

在此輸入圖像描述

希望您的項目現在應該正常建設。 完成構建后,Java庫的jar文件將放在模塊目錄的build / libs目錄中。 如果要手動構建jar文件,可以從Gradle窗口運行其jar構建文件任務:

在此輸入圖像描述

這里的Oroginal文章: 如何從Android Studio項目中創建.jar

暫無
暫無

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

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