多个jar包合并成一个jar包(ant)
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)的更多相关文章
- 多个jar包合并成一个jar包的办法
步骤: 1.将多个JAR包使用压缩软件打开,并将全包名的类拷贝到一个临时目录地下. 2.cmd命令到该临时目录下,此时会有很多.class文件,其中需要带完整包路径 3.执行 jar -cvfM te ...
- 将多个jar包重新打包成一个jar包
我介绍的方法是使用java命令来操作的,所以首先的安装jdk,这个就自己搞定吧. 提取jar包 为了将多个jar包打包成一个jar包,首先要将每个jar包的内容提取出来放到一个文件夹下,具体的操作命令 ...
- docker 导出多个镜像合并成一个tar
导出单个镜像 docker save [images] > [name.tar] 倒出多个镜像合并成一个tar包 docker save [images] [images] > [name ...
- 【Maven jar】打包单个或多个文件,有依赖jar包的将架包一起打包成一个jar包供别的项目引用
之前有一片文章,是打包单个java文件的.这次想要将http://www.cnblogs.com/sxdcgaq8080/p/8398780.html 打包成jar包,发现这个java文件中引用了多 ...
- IDEA如何把写好的java文件/项目打包成一个jar的文件
一.命令行的方法 打开cmd,输入jar -cvf [打包后的文件名].jar [要打包的目录]. 二.IDEA的方法 写完一个java程序把它封装成一个jar的包 这样就可以在别的jar上面运行这 ...
- 将多个jar合并为一个jar
有时候,我们需要将多个jar合并为一个jar,ant提供了这样的一个功能 build.xml文件如下 执行以上任务会将 当前目录下的 mysql.jar,commons-io.jar合并为一个 all ...
- 多个DLL合并成一个DLL
多个DLL合并成一个DLL,把DLL合并到Exe中的解决方案 1:) 下载 http://download.microsoft.com/download/1/3/4/1347C99E-9DFB-425 ...
- 多个UIImage合并成一个UIImage
多个UIImage合并成一个UIImage 创建两个UIImage UIImage *image1 = [UIImage imageNamed:@"iOSDevTip"]; UII ...
- C#程序(含多个Dll)合并成一个Exe
把C#程序(含多个Dll)合并成一个Exe的超简单方法 开发程序的时候经常会引用一些第三方的DLL,然后编译生成的exe文件就不能脱离这些DLL独立运行了. 但是,很多时候我们本想开发一款只需要一 ...
随机推荐
- 利用Apache POI操作Excel
最近在做接口,有个功能是利用Excel导入汽车发动机所需零件信息到线上系统中.简单回顾一下之前学过的用java操作Excel. 1.maven配置Apache POI pom.xml中配置POIjar ...
- DataTable.Select筛选过滤数据返回DataRow[]转为DataTable添加到DataSet
问题还原,如图所示,我们要筛选所有SHDP 为北京翠微KR的数据. 1. 筛选DataTable微软为我们提供了一个方法DataTable.Select(),其用法如下: 1) Select()—— ...
- Python:Django 项目中可用的各种装备和辅助
1 Redis 数据库 2 MySQL 数据库 3 前端服务器 live-server 4 定时任务 django-crontab扩展 5 Docker 容器 --用来运行 FastDFS 分布式文件 ...
- 【AMAD】python-magic -- libmagic的python封装
简介 动机 作用 用法 个人评分 简介 libmagic的python封装 动机 封装libmagic,使用python代码获取文件类型. 作用 libmagic通过文件头部,来确定文件的类型. 用法 ...
- linux下Eclipse进行C编程时动态链接库的生成和使用
引用 http://linux.chinaitlab.com/soft/864157.html 欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 一.创建动态链接库1.创建 ...
- 【VS开发】内存泄漏相关问题
之所以撰写这篇文章是因为前段时间花费了很大的精力在已经成熟的代码上再去处理memory leak问题.写此的目的是希望我们应该养成良好的编码习惯,尽可能的避免这样的问题,因为当你对着一大片的代码再去处 ...
- C++学习笔记-多态的实现原理
深入了解多态的实现原理,有助于提高对于多态的认识 多态基础 多态的实现效果 多态:同样的调用语句有多种不同的表现形态 多态实现的三个条件 有继承.有virtual重写.有父类指针(引用)指向子类对象 ...
- git与码云关联教程
注:我用的这种方法是利用“公钥”使本地仓库与码云建立起联系,从而不需要用户名与密码的方法. 1.首先,创建好码云,再在码云上创建好个人仓库,然后复制好仓库地址,这里的地址是指“SSH”类型的. 2.下 ...
- splite与join
Python split() 通过指定分隔符对字符串进行切片 切片之后为list数据类型. sentence = 'I can because I think I can ' s_1 = senten ...
- 2019.11.9 csp-s 考前模拟
2019.11.9 csp-s 考前模拟 是自闭少女lz /lb(泪奔 T1 我可能(呸,一定是唯一一个把这个题写炸了的人 题外话: 我可能是一个面向数据编程选手 作为一个唯一一个写炸T1的人,成功通 ...