【问题标题】: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”。