本文主要实现使用ANT,将Android项目打包成jar,为方便其他项目使用。

ANT可以去官网下载(http://ant.apache.org/

先介绍打包的步骤,打包脚本下方贴出

步骤:

1,将build.xml脚本文件放置到需要打包的文件项目工程更目录下,例如项目mobilebase

2,根据build.xml中相关提示进行参数的配置(需要在环境变量中配置ANDROID_HOME变量)

3,在命令行中进入到build.xml所在的根目录下(例如:mobilebase)

4,输入命令:ant -f build.xml

5,打包完毕

以下为Ant脚本build.xml

<?xml version="1.0" encoding="UTF-8"?>
<project name="mobilebase" basedir="." default="clean">
<!-- ant 环境-->
<property environment="env"/>
<!-- 需要编码的源代码目录-->
<property name="src.dir" value="src"/>
<!-- 编译后class存放的目录-->
<property name="class.dir" value="classes"/> <!-- jar包的名称-->
<property name="jar.name" value="${ant.project.name}.jar"/>
<!-- 项目依赖包的路径-->
<property name="extern-libs" value="libs"></property> <!-- 加载android项目对于sdk版本,需要保证target属性存在-->
<loadproperties srcfile="project.properties"></loadproperties> <!-- Android SDK 目录 -->
<property name="sdk-folder" value="${env.ANDROID_HOME}"/>
<!-- SDK 指定目录 -->
<property name="sdk-platform-folder" value="${sdk-folder}/platforms/${target}"></property> <!-- 引入第三方jar包和android。jar-->
<path id="extern.libs.classpath">
<fileset dir="${extern-libs}">
<include name="*.jar"/>
</fileset>
<fileset dir="${sdk-platform-folder}">
<include name="*.jar"/>
</fileset>
</path>
<!-- 初始化 -->
<target name="init">
<mkdir dir="${class.dir}"/>
</target>
<!-- 编译源文件-->
<target name="complie" depends="init">
<javac srcdir="${src.dir}" encoding="UTF-8" destdir="${class.dir}" includeantruntime="true" classpathref="extern.libs.classpath"></javac>
</target>
<!-- 将源文件 打包成jar包 -->
<target name="jar" depends="complie" description="class to jar">
<jar destfile="${ant.project.name}.jar" encoding="UTF-8" basedir="${class.dir}"/>
</target>
<!-- 清除class文件 -->
<target name="clean" depends="jar">
<delete dir="${class.dir}"/>
</target>
</project>

使用ANT将Android打包成Jar包的更多相关文章

  1. [JAR包] android引入JAR包,打包成JAR包,打包成Library项目,导入Library项目

    (1)项目导入JAR包:1.在项目目录里建立一个libs目录,将外部jar包拷贝在里面.2.右键点击项目,Bulid Path->Configure Build Path3.在设置Libraie ...

  2. 【Android端】代码打包成jar包/aar形式

    Android端代码打包成jar包和aar形式: 首先,jar包的形式和aar形式有什么区别? 1.打包之后生成的文件地址: *.jar:库/build/intermediates/bundles/d ...

  3. Android studio 将 Module 打包成 Jar 包

    整理记录 AndroidStudio 把一个 module 项目打包成 jar 包. 一.默认自动生成的 jar 包 众所周知 android studio 会在library所依赖的 app运行 或 ...

  4. [Java] Java 打包成jar包 和 解压jar包

    解压jar包 jar xf xxx.jar 打包成jar包 方法一:通过jar命令 jar命令的用法: 下面是jar命令的帮助说明: 用法:jar {ctxui}[vfm0Me] [jar-file] ...

  5. 【spring boot】idea下springboot打包成jar包和war包,并且可以在外部tomcat下运行访问到(转)

    转自:https://www.cnblogs.com/sxdcgaq8080/p/7727249.html   接着上一章走呗:http://www.cnblogs.com/sxdcgaq8080/p ...

  6. springboot打包成jar包后找不到xml,找不到主类的解决方法

    springboot打包成jar包后找不到xml,找不到主类的解决方法 请首先保证你的项目能正常运行(即不打包的时候运行无误),我们在打包时经常遇到如下问题: springboot打包成jar包后找不 ...

  7. maven把项目打包成jar包后找不到velocity模板的bug

    使用springmvc 开发时候要实现发送velcotiy模板邮件,在配置正常后,在本地测试正常后,使用maven打包成jar包后,报以下错误, Caused by: org.apache.veloc ...

  8. 【spring boot】6.idea下springboot打包成jar包和war包,并且可以在外部tomcat下运行访问到

    接着上一章走呗:http://www.cnblogs.com/sxdcgaq8080/p/7712874.html 然后声明一点,下面打包的过程中,scope一直都是使用默认的范围 <!--用于 ...

  9. idea打包SpringBoot项目打包成jar包和war

    - 打包成jar包 1. <groupId>com.squpt.springboot</groupId> <artifactId>springbootdemo< ...

随机推荐

  1. android 从contentView中删除view

    1. ((ViewGroup)view.getParent()).removeView(view) 2. ViewGroup rootView = (ViewGroup) this.findViewB ...

  2. Jenkins执行shell脚本启动tomcat失败解决方法

    环境:Centos 7 Jenkins版本:2.124 状况:Jenkins会执行服务器某个目录下的Shell, 脚本中功能是复制替换某两个配置文件,然后关闭tomcat,重启Tomcat. 但是,T ...

  3. 指定ip地址登陆服务器

    [root@localhost ~]# cat /etc/hosts.allow ## hosts.allow   This file contains access rules which are ...

  4. 洛谷 P1165 日志分析

    题目描述 M 海运公司最近要对旗下仓库的货物进出情况进行统计.目前他们所拥有的唯一记录就是一个记录集装箱进出情况的日志.该日志记录了两类操作:第一类操作为集装箱入库操作,以及该次入库的集装箱重量:第二 ...

  5. 在Ubuntu16.04安装YouCompleteMe

    作为从事了4年多嵌入式Linux工作的软件工程师,最近决定完全在ubuntu上工作,使用vim进行代码的阅读和编辑,然后尝试去安装vim相关的各种插件.从来没用过代码补全的我,在网上找到了插件omni ...

  6. 图片,二进制,oracle数据库

    图片在oracle数据库中一般以二进制存在,存储类型是blob,然而clob类型一般存储的是大于4000的字符,不能用来存储图像这样的二进制内容,下面展示一下实现图像,二进制,oracle 数据库的应 ...

  7. MIPS——递归调用

    嵌套过程 不调用其他过程的过程称为叶过程(leaf procedure).如果所有过程都是叶过程,那么情况就很简单.但是某个过程可以调用其他过程,甚至调用的是自身的“克隆”.在调用非叶过程时使用寄存器 ...

  8. Electric Motor Manufacturer - Motor Protection: 5 Questions, 5 Answers

    I. Selection principle of motor protectorThe  Electric Motor Manufacturer   stated that the reasonab ...

  9. javascript中typeof、undefined 和 null

    typeof 是运算符,注意不是函数,是运算符,其作用,是考察变量究竟是什么类型.或曰,是变量是否定义或是否初始化的照妖镜.返回值是字符串. undefined 表示一个对象没有被定义或者没有被初始化 ...

  10. h5快速制作工具-企业级. 非个人无水印

    Epub360 Epub是团队引入的专业级H5应用开发工具,能够快速制作出高质量的H5运营交互页面,具有动画控制.交互设定.社交应用和数据应用的特点,其制作过程就类似于制作一个PPT,比较容易上手. ...