https://blog.csdn.net/gzl003csdn/article/details/53539133

多个jar包合并成一个jar 使用Apache的Ant是一个基于Java的生成工具。这个工具的全名是another neat tool    可以到官网下载 apache-ant-1.9.7-bin.zip

下载好了之后接下来就是 解压   配置环境   使用

安装和配置

计算机>>>右键>>>属性>>>高级系统配置>>> 环境变量>>>

编辑系统变量

然后修改系统变量的path的值

然后一路确定回去  接下来就是测试一下是否配置成功!

Window + R 然后输入cmd  回车 >>> 在命令框中输入ant 如果提示如下就表示你已经成功的安装了

C:\Users\user>ant
Buildfile: build.xml does not exist!
Build failed

如图

OK >>>>>>>接下来开始使用

注意:ant默认运行build.xml文件,这个文件到目前为止是不存在的 需要我们创建。
如果不想命名为build.xml,运行时可以使用 ant -buildfile test.xml 命令指明要运行的构建文件。

注意:把你需要合并的jar包 和 build.xml 文件 放到同一个目录下面

build.xml 文件的格式如下

<?xml version="1.0" encoding="utf-8"?>
<project
name="lzg_dlna"
basedir="D:\Android\android_tool\ant_test"
default="makeSuperJar" >

<target
name="makeSuperJar"
description="description" >

<jar destfile="lzg_dlna.jar" >
<zipfileset src="cdi-api.jar" />
<zipfileset src="http-2.2.1.jar" />
<zipfileset src="httpclient-4.2.2.jar"/>
<zipfileset src="httpcore-4.2.3.jar" />
<zipfileset src="javax.annotation_1.0.jar" />
<zipfileset src="javax.inject.jar" />
<zipfileset src="javax.servlet-3.0.0.v201103241009.jar" />
<zipfileset src="jetty-client-8.1.9.v20130131.jar" />
<zipfileset src="jetty-continuation-8.1.9.v20130131.jar" />
<zipfileset src="jetty-http-8.1.9.v20130131.jar" />
<zipfileset src="jetty-io-8.1.9.v20130131.jar" />
<zipfileset src="jetty-security-8.1.9.v20130131.jar" />
<zipfileset src="jetty-server-8.1.9.v20130131.jar" />
<zipfileset src="jetty-servlet-8.1.9.v20130131.jar" />
<zipfileset src="jetty-util-8.1.9.v20130131.jar" />
<zipfileset src="seamless-http-1.0-alpha2.jar" />
<zipfileset src="seamless-util-1.0-alpha2.jar" />
<zipfileset src="seamless-xml-1.0-alpha2.jar" />
<zipfileset src="slf4j-api-1.6.1.jar" />
<zipfileset src="slf4j-jdk14-1.6.1.jar" />
</jar>
</target>

</project>

name  : 表示的是你即将合成的jar包的名字 可以随便写
basedir :  表示你存放jar包的目录(D:\Android\android_tool\ant_test这个目录下放的是你当前需要合并的所有jar 和build.xml文件)

以上都转备好之后开始运行ant -buildfile命令

ant -buildfile D:\Android\android_tool\ant_test\build.xml

如下图

出现上图的时候就表示你已经合并成功了 去下面的目录找一下你的jar吧

D:\Android\android_tool\ant_test

OK 合并成功  !  该有小伙伴问了 能不能用啊 这么简单就成功了

接下开始把lzg_dlna.jar配置到项目里使用

如果你的instant run里面第一个选项是勾选的 运行会可能会报错 如果报错的话直接取消勾选

一般如果你的这个按钮是勾选的话运行就会报错

Error:注: 某些输入文件使用或覆盖了已过时的 API。
注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。
注: 某些输入文件使用了未经检查或不安全的操作。
注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:transformClassesWithInstantRunForDebug'.
> Invalid signature file digest for Manifest main attributes

* Try:
Run with --stacktrace option to get the stack trace. Run with --debug option to get more log output.

如果是的话直接取消勾选在次运行就OK了
合并完成了
---------------------
作者:李智光
来源:CSDN
原文:https://blog.csdn.net/gzl003csdn/article/details/53539133
版权声明:本文为博主原创文章,转载请附上博文链接!

多个jar包合并成一个jar包(ant)的更多相关文章

  1. 多个jar包合并成一个jar包的办法

    步骤: 1.将多个JAR包使用压缩软件打开,并将全包名的类拷贝到一个临时目录地下. 2.cmd命令到该临时目录下,此时会有很多.class文件,其中需要带完整包路径 3.执行 jar -cvfM te ...

  2. 将多个jar包重新打包成一个jar包

    我介绍的方法是使用java命令来操作的,所以首先的安装jdk,这个就自己搞定吧. 提取jar包 为了将多个jar包打包成一个jar包,首先要将每个jar包的内容提取出来放到一个文件夹下,具体的操作命令 ...

  3. docker 导出多个镜像合并成一个tar

    导出单个镜像 docker save [images] > [name.tar] 倒出多个镜像合并成一个tar包 docker save [images] [images] > [name ...

  4. 【Maven jar】打包单个或多个文件,有依赖jar包的将架包一起打包成一个jar包供别的项目引用

    之前有一片文章,是打包单个java文件的.这次想要将http://www.cnblogs.com/sxdcgaq8080/p/8398780.html  打包成jar包,发现这个java文件中引用了多 ...

  5. IDEA如何把写好的java文件/项目打包成一个jar的文件

    一.命令行的方法 打开cmd,输入jar -cvf [打包后的文件名].jar [要打包的目录]. 二.IDEA的方法 写完一个java程序把它封装成一个jar的包  这样就可以在别的jar上面运行这 ...

  6. 将多个jar合并为一个jar

    有时候,我们需要将多个jar合并为一个jar,ant提供了这样的一个功能 build.xml文件如下 执行以上任务会将 当前目录下的 mysql.jar,commons-io.jar合并为一个 all ...

  7. 多个DLL合并成一个DLL

    多个DLL合并成一个DLL,把DLL合并到Exe中的解决方案 1:) 下载 http://download.microsoft.com/download/1/3/4/1347C99E-9DFB-425 ...

  8. 多个UIImage合并成一个UIImage

    多个UIImage合并成一个UIImage 创建两个UIImage UIImage *image1 = [UIImage imageNamed:@"iOSDevTip"]; UII ...

  9. C#程序(含多个Dll)合并成一个Exe

    把C#程序(含多个Dll)合并成一个Exe的超简单方法   开发程序的时候经常会引用一些第三方的DLL,然后编译生成的exe文件就不能脱离这些DLL独立运行了. 但是,很多时候我们本想开发一款只需要一 ...

随机推荐

  1. Appium+python自动化2-环境搭建

    一.必备软件安装 小编的环境是Windows 7版本 64位系统(32位的同学自己想办法哦) 1.jdk1.6.0 (64位) 2.android-sdk_r24.3.4-windows 3.pyth ...

  2. JSP 简单标签extends SimpleTagSupport

    1.控制JSP页面某一部分内容是否执行 public void doTag() this.getJspBody().invoke(null);执行 空白,不执行 2.控制JSP页面内容重复执行 pac ...

  3. Delphi组件编辑器

    看到Dev中的cxGrid组件的编辑器很强大,于是很想探究一下,跟踪cxGrid的代码比较麻烦,但原理大概知道一二.首先来研究一下设计器双击cxGrid弹出一个编辑窗体,选择窗体中的一个内容后,属性编 ...

  4. debian中安装gcc make

    ubuntu debian 可以直接 apt-get install gcc automake autoconf libtool make

  5. JavaScript(4):正则表达式

    基础方法 <!DOCTYPE html> <html> <body> <p>类型及转换</p> <script> // 正则表达 ...

  6. list 属性字段直接转成字符串数组

    List<Car> cars = //whatever; string concat = String.Join(",", cars.Select(c => c. ...

  7. 【HANA系列】SAP HANA SQL取表中每行最小值

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL取表中每 ...

  8. 服务间的通信 RestTemplate和Feign

    1.RestTemplate Spring RestTemplate 是 Spring 提供的用于访问 Rest 服务的客户端,RestTemplate 提供了多种便捷访问远程Http服务的方法,能够 ...

  9. Ubuntu下借助URLOS实现快速安装DzzOffice企业办公套件

    如今,越来越多的个人.团队甚至企业都在使用GSuite或者Office365等网络办公套件,为什么人们越来越喜爱使用网络办公套件?一方面是考虑数字资产的安全性以及管理效率,另一方面则是日益增大的协同办 ...

  10. 【C/C++】对于可重入、线程安全、异步信号安全几个概念的理解

    由于前段时间,程序偶尔异常挂起不工作,检查后发现时死锁了,原因就是:在信号处理函数里面调用了fprintf. printf等io函数是需要对输出缓冲区加锁,这类函数对本身是线程安全的,但是对信号处理函 ...