本文主要实现使用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. 【学习笔记】六:面向对象的程序设计——理解JS中的对象属性、创建对象、JS中的继承

    ES中没有类的概念,这也使其对象和其他语言中的对象有所不同,ES中定义对象为:“无序属性的集合,其属性包含基本值.对象或者函数”.现在常用的创建单个对象的方法为对象字面量形式.在常见多个对象时,使用工 ...

  2. IOS照相

    #import <UIKit/UIKit.h> @interface AddPictureViewController : UIViewController<UIImagePicke ...

  3. Java多态的应用

    //多态的应用 class Animal{     public void eat(){     } } class Dog extends Animal{     public void eat() ...

  4. LR中下载文件的脚本

    #include "web_api.h" Action(){ int iflen; //文件大小 long lfbody; //响应数据内容大小 web_url("xxx ...

  5. DataModel doesn't have preference values

    mahout和hadoop实现简单的智能推荐系统的时候,出现了一下几个方面的错误 DataModel doesn't have preference values 意思是DataModel中没有找到初 ...

  6. stringstream类的简介和用法

    一.简介 <sstream>类库定义了三种类:istringstream,ostringstream,stringstream.分别用来进行流的输入,流的输出,输入输出操作.在此演示str ...

  7. CAD交互绘制圆形云线批注(网页版)

    js中实现代码说明: 动态拖放时的绘制事件: function DoDynWorldDrawFun(dX,dY,pWorldDraw,pData) { //自定义实体的GUID标识符 var sGui ...

  8. JavaScript -- 语法和数据类型

    前戏 前面学了HTML和CSS相关的知识,那JavaScript是做什么的呢?你在网页上看到的那些炫酷的特效都是通过JS来实现的,所以,想要开发一个逼格满满的web页面,JS是必须要会的 什么是Jav ...

  9. Luogu P2397 yyy loves Maths VI (mode)

    题目传送门 虽然只是一道黄题,但还是学到了一点新知识-- 摩尔投票法 用\(O(1)\)的内存,\(O(n)\)的时间来找出一串长度为n的数中的众数,前提是众数出现的次数要大于\(n/2\) 方法很简 ...

  10. CPU 基础术语总结

    CPU CPU为 Central Processing Unit 的缩写.是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit).它的功能主要是解释计算机 ...