在Android studio中用gradle打 jar 包(Mac下)

这两天公司要重构项目,以前的项目在eclipse上,准备迁移到Android studio上,需要对项目打包,于是我学习了Android studio中gradle打包的内容。我在公司用的Mac,在家用的Windows,两种平台下,打包基本一样的,这里主要说下在Mac系统下的过程。

在Andorid studio中的Terminal用的是Mac的终端,所以要使用Terminal的gradle命令打包,先要配置下mac中的gradle环境,打开mac上的终端:

(1) 输入命令:open .bash_profile

(2) 如果提示没有.base_profile文件,则要先创建.bash_profile文件。

创建.bash_profile文件:

输入:touch .bash_profile     命令后会帮你创建并打开.bash_profile文件

(3)在打开的.bash_profile文件中编辑,下面是我内容:

export GRADLE_HOME=/Users/wuqiyan/Downloads/Software/gradle-2.12;(下载gradle-2.12,解压后的目录)

export PATH=$PATH:$GRADLE_HOME/bin

保存后就可以了。

(4)再输入命令:open .bash_profile 就可以打开.bash_profile文件内容了。

(5)以上过程结束后,gradle环境配置好了。检查下,输入命令:gradle -version  看到下面的就等于配置好了。

           

------------------------------------------------------------

Gradle 2.12

------------------------------------------------------------

Build time:   2016-03-14 08:32:03 UTC

Build number: none

Revision:     b29fbb64ad6b068cb3f05f7e40dc670472129bc0

Groovy:       2.4.4

Ant:          Apache Ant(TM) version 1.9.3 compiled on December 23 2013

JVM:          1.8.0_77 (Oracle Corporation 25.77-b03)

OS:           Mac OS X 10.11.3 x86_64

 

以上就是Mac中的gradle的配置,这时候回到Android studio中,在Terminal中输入命令:gradle -version  也会看到上面的提示。

先来看下目录结构:

先建了一个项目后,打开app下的build.gradle文件:

(1)将 apple plugin:‘com.android.application‘改为apply plugin: ‘com.android.library‘

(2)删除:applicationId,versionCode,versionName

(3)加入:

task clearJar(type: Delete) {
    //删除以前有的
    delete ‘build/libs/partJar.jar‘
 }
task makeJar(type: Copy) {
     //从哪里打包class文件,可以指定文件和目录
     from(‘build/intermediates/bundles/debug/‘)
      //打包到jar后的目录结构
     into(‘build/libs/‘)
     include(‘classes.jar‘)
     rename (‘classes.jar‘, ‘partJar.jar‘)
 }
 makeJar.dependsOn(clearJar, build) 
代码输入完之后,在andriod studio中Terminal中输入:./gradlew makeJar    (windows中输入:gradlew makeJar)最后就可以在 build/libs/目录下找到partJar.jar。

如果要打Jar指定包名和类的话,可以参考下面的代码:
task clearJar(type: Delete) {
    delete ‘build/libs/partJar.jar‘
}
task makeJar(type:org.gradle.api.tasks.bundling.Jar) {
    //指定生成的jar名
    baseName ‘partJar2‘
    //从哪里打包class文件,可以指定文件和目录
    from(‘build/intermediates/classes/debug/com/example/wuqiyan/exportjar/‘) {
        include ‘BuildConfig.class‘
    }
    //打包到jar后的目录结构
    into(‘com/example/wuqiyan/exportjar/‘)
}
makeJar.dependsOn(clearJar,build)

可以阅读:http://www.alloyteam.com/2015/03/shi-yong-gradle-da-bao-zhi-ding-bao-ming-he-lei-di-jar/

http://www.jianshu.com/p/dc6bcd4478a1

 
时间: 2024-10-20 21:58:17

在Android studio中用gradle打 jar 包(Mac下)的相关文章

android studio 使用gradle 导出jar包,并打包assets目录

最近项目在做一个sdk,供别的开发者使用,所以要求导出jar包. 与eclipse不同,android studio 1.0 没提供导出jar包的图形界面.需要结合gradle来生成jar包. 首先 需要设置module应用的gradle插件为 library 代码长这样: ? 1 <code class="hljs">apply plugin: 'com.android.library'</code> 这样,build的时候,android studio 1.

Android Studio 使用 Gradle 打包 Jar

Android Studio 打 Jar 包一直是一个麻烦的事,按照网上现有的教程,打包一个混淆的 jar 需要完成下列步骤: 1.将 plugin 修改为 library 后 build 出 aar,再提取 aar 里面的 classes.jar 2.使用 jarjar 等工具剔除多余的 class 3.对第二步得到的 jar 进行混淆 无论哪一步,所做的工作量都不少.于我个人而言,相当麻烦,于是花了些时间研究了下 Gradle 打 Jar 包. 代码 废话不多说,先上代码(注:只在 Grad

android studio中导入第三方jar包和第三方库文件的方法

一.导入第三方jar包的方法 其实较为简单,以下步骤: 1>在工程的libs下面放置需要导入的jar包 2>在导入的jar包右键,选择"add as library" 3>这时候就能够在app下面的build.gradle中发现多了如下说明:"compile XXXX",说明导入jar文件成功了. 二.导入第三方类库文件 相对而言,其实就是将之前的Eclipse的project或者module转化成android studio下的可执行的proje

android studio 引入第三方类库jar包

第三方类库jar包 这就简单多了,直接将jar包拷贝到app/libs下,然后在app下的build.gradle中添加此jar的依赖.如下: dependencies { compile 'com.android.support:support-v4:19.1.0' compile files('libs/libammsdk.jar') compile files('libs/universal-image-loader-1.8.6-with-sources.jar') compile fil

Android Studio 将module打成jar包

1.新建测试工程,工程里面有两个module,app是Android工程,mylibrary是Android Library库. 2.打开mylibrary目录下的build.gradle文件,加入下面的代码块. task makeJar(type: Copy) { delete 'build/libs/mylibrary.jar' //删除已经存在的jar包 from('build/intermediates/bundles/release/')//从该目录下加载要打包的文件 into('bu

android studio打可执行jar包

android studio可以通过library工程打出jar包 解压会看到META-INF/MANIFEST.MF文件的打开如下: Manifest-Version: 1.0 增加一行,注意冒号后面有一个空格,如下: Manifest-Version: 1.0 Main-Class: com.example.MyClass 在jar解压后的文件夹下 按shift+鼠标右键 选择:在此处打开命令窗口 ,在cmd中执行如下命: jar -cvmf META-INF\manifest.mf tes

解决Android Studio加载第三方jar包,出现包重复加载的问题:

通过Maven中央库添加第三方jar包的时候,出现了重复加载jar包的问题,解决办法很简单去掉一个不让它去加载就OK了 一.错误 Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.internal.LoggedErrorException: Failed to run command: F:\zsl\sdk\build-tools\21.1.2\dx.bat --dex --output F:\zs

在Android Studio中用Gradle添加Robolectric

我们用Robolectric测试的话需要在gradle中进行配置,国内的详细教程太过简易,而且很多是低版本下的配置方案.所以经过本人的仔细摸索,找到了现在高版本中的配置方案,主要还是参考了官网的配置教程:https://github.com/robolectric/robolectric-gradle-plugin 下面贴上完整的步骤,看完后就能配置成功了~ 下面红字部分就是要添加的部分. 首先,在最外面的build.gradle中配置classpath // Top-level build f

Android Studio如何打包打jar包

下面介绍的是用批处理打jar包. 首先,复制下面的代码然后在桌面新建一个txt文本,然后改名为.bat后缀的文件,之后编辑它,将代码粘贴上去保存,双击运行该批处理文件. @echo off echo "请输入module路径(在module上右键然后选择copy path即可 获取路径):" set /p ModulePath= echo %ModulePath% set ClassesPath=%ModulePath%\build\intermediates\classes \deb