3 回答
TA贡献1757条经验 获得超8个赞
打开库项目的build.gradle
在build.gradle中编写两个任务 - deleteJar和createJar并添加规则createJar.dependsOn(deleteJar,build)
上面的代码:
task deleteJar(type: Delete) { delete 'libs/jars/logmanagementlib.jar'} task createJar(type: Copy) { from('build/intermediates/bundles/release/') into('libs/jars/') include('classes.jar') rename('classes.jar', 'logmanagementlib.jar')}createJar.dependsOn(deleteJar, build)
从右侧展开gradle面板并打开您图书馆下的所有任务 - >其他。您将在那里看到两个新任务 - createJar和deleteJar
双击createJar
任务成功运行后,从createJar任务中提到的路径获取生成的jar,即libs / xxxx.jar
将新生成的jar复制到所需项目的lib文件夹中 - >右键单击 - >选择“add as library”
TA贡献1842条经验 获得超21个赞
如果您在Gradle中将代码设置为普通Java模块,那么让Gradle为您提供包含内容的jar文件非常容易。该jar文件只包含您的代码,而不是它依赖的其他Apache库。我建议这样分发; 将依赖项捆绑到库中是有点奇怪的,这些库的用户必须自己包含这些依赖项更为正常(因为否则这些项目的冲突已经链接了库的副本,可能是不同的版本)。更重要的是,如果您要发布图书馆,可以避免重新分发其他人的代码时出现潜在的许可问题。
将需要编译的代码转换为jar,并将其移至Android Studio中的单独普通Java模块:
文件菜单> 新模块... > Java库
在向导中设置库,Java包名称和类名。(如果你不想让它为你创建一个类,你可以在创建模块后删除它)
在Android代码中,设置新模块的依赖关系,以便它可以使用新库中的代码:
文件 > 项目结构 > 模块 > (您的Android模块) > 依赖项 > + > 模块依赖项。请参见下面的截图:
从出现的对话框的列表中选择您的模块:
希望您的项目现在应该正常建设。完成构建后,Java库的jar文件将放在模块目录的build / libs目录中。如果要手动构建jar文件,可以从Gradle窗口运行其jar构建文件任务:
TA贡献1829条经验 获得超6个赞
只需将其添加到java模块的build.gradle即可。它将包括归档中的依赖库。
mainClassName = "com.company.application.Main"jar { manifest { attributes "Main-Class": "$mainClassName" } from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }}
这将导致[module_name] / build / libs / [module_name] .jar文件。
添加回答
举报