【问题标题】:How do you export an Android Library as a jar?如何将 Android 库导出为 jar?
【发布时间】:2018-12-08 04:58:18
【问题描述】:

我需要这个的原因是因为我试图解决我被告知的一个错误,即 Xamarin 并不总是关闭流,因此不会写入某些内容提供程序。 technique 是创建一个 jar,然后运行一个脚本来 C#ifiy 并将其导出到 dll。这就是为什么我需要一个罐子。

我最初是通过创建一个 Java 库来尝试这样做的,但这没有奏效,因为我需要访问各种 android 包(例如,android.Net)。因此,虽然我确实按照these 指令(Abhinav Tyagi 的回答)为 Java 库创建了一个 jar,但我似乎无法让它适用于 Android 库。对于 Android 库,它说它运行了 Create Jar 脚本,但我没有看到它。

说清楚,这就是我想变成罐子的东西:

【问题讨论】:

    标签: android android-studio jar


    【解决方案1】:

    使用 Android Studio 导出 jar 文件

    从存储库中查看库源代码。

    在您的 android studio 中导入结帐库。

    修改你的 build.gradle

    如果您当前的模块是一个库项目,那么您需要正确识别“android-library”插件,如下所述。

    apply plugin: 'com.android.library'
    android {
        compileSdkVersion 'Google Inc.:Google APIs:16'
        buildToolsVersion "23.0.0"
        defaultConfig {
            minSdkVersion 13
            targetSdkVersion 23
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    }
    dependencies {
        compile 'com.android.support:support-v13:23.0.0'
    }
    task makeJar(type: Copy) {
        from('build/intermediates/bundles/release/')
        into('build/outputs/')
        include('classes.jar')
        rename ('classes.jar', 'myLib.jar')
        into('release/') //you can change this directory where you want to copy your .jar
    }
    task clearJar(type: Delete) {
        delete 'build/libs/myLib.jar'
    }
    
    
    
    apply plugin: 'com.android.library'
    android {
        compileSdkVersion 'Google Inc.:Google APIs:16'
        buildToolsVersion "23.0.0"
        defaultConfig {
            minSdkVersion 13
            targetSdkVersion 23
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    }
    dependencies {
        compile 'com.android.support:support-v13:23.0.0'
    }
    task makeJar(type: Copy) {
        from('build/intermediates/bundles/release/')
        into('build/outputs/')
        include('classes.jar')
        rename ('classes.jar', 'myLib.jar')
        into('release/') //you can change this directory where you want to copy your .jar
    }
    task clearJar(type: Delete) {
        delete 'build/libs/myLib.jar'
    }
    

    运行 gradlew 来制作 jar。 要生成 .jar,请按照以下步骤操作,

    打开终端。

    移动到您的项目根目录。

    调用你在build.gradle中添加的makejar函数

    示例 :-> D:\Users\MyWorkspace\project > gradlew makejar

    完成上述所有步骤后,您将在发布文件夹下找到“myLib.jar”。

    【讨论】:

      猜你喜欢
      • 2016-01-13
      • 2013-12-02
      • 2012-12-24
      • 1970-01-01
      • 2016-11-22
      • 2013-09-15
      • 2019-12-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多