本文主要实现使用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. 关于搭建系统直播和Thinkphp的杂谈(持续更新)

    Q:Access denied for user 'root'@'localhost' 错误 A:第一种:配置文件中把数据库的用户名密码再改一遍,把runtime里的文件删除  第二种:修改syste ...

  2. 你不知道的HTTP之首部字段一览

    一.HTTP/1.1 首部字段一览 HTTP 首部字段根据实际用途被分为以下 4 种类型: 1.通用首部字段:请求报文和响应报文两方都会使用的首部. 首部字段名 说明 Cache-Control 控制 ...

  3. Date/Time Functions and Operators (Postgres)

            http://www.postgresql.org/docs/9.1/static/functions-datetime.html   Search Documentation:  H ...

  4. Slacklining 2017/2/7

    原文 Proline Slacklining's expansion is still in process,but it already has a professional scene.Some ...

  5. hadoop中修改端口号

    1.hdfs-site.xml 这里修改hdfs相关的端口. 1 <property> 2 <name>dfs.namenode.scondary.http-address&l ...

  6. 打通C/4HANA和S/4HANA的一个原型开发:智能服务创新案例

    今年6月SAP发布C/4HANA之后,有顾问朋友们在微信公众号后台留言,询问C/4HANA如何同SAP的数字化核心S/4HANA系统结合起来,从而打通企业的前后端业务,帮助企业实现数字化转型. 有的顾 ...

  7. WPF知识点全攻略05- XAML内容控件

    此处简单列举出布局控件外,其他常用的控件: Window:WPF窗口 UserControl:用户控件 Page:页 Frame:用来浏览Page页 Border:嵌套控件,提供边框和背景. Butt ...

  8. 剑指offer42 左旋转字符串

    自己想的一个新的写法,如果不排除length=0的情况,下面那个while是死循环 class Solution { public: string LeftRotateString(string st ...

  9. 模板类 vector

    概要 介绍一下模板类 vector 的常用操作,以及一个应用举例,顺时针打印矩阵.   基本定义 模板类 vector 是一种动态数组,它是使用 new 创建动态数组的替代品,实际上,vector 也 ...

  10. QT +自定义控件-spin+slider

    动手实现自定义控件: 1.首先在ui界面中添加一个(Widget)容器类.如图中的1所示 2.在项目中添加一个SmallWidget类,如下: 3.接着在程序编辑界面进行程序编辑如下: #includ ...