创建pathing jar
pathing jar是一个特殊的jar:
- 该jar文件只包含manifest.mf文件
- 该manifest文件只包含Class-Path,列出了所有需要真正加到classpath中的jar,或者directory
需要pathing jar的原因是windows下command line额长度限制(8k),无论你怎么声明你的classpath:
- set CLASS_PATH=allpaths
- set CLASS_PATH=path1; set CLASS_PATH=%CLASS_PATH%;path2
- java -cp allpaths
结果都会是:
The input line is too long.
The syntax of the command is incorrect.
对于ant,解决方案是:http://stackoverflow.com/questions/201816/how-to-set-a-long-java-classpath-in-msdos-windows
<macrodef name="create-pathing-jar">
<sequential>
<ivy:cachepath pathid="all_classpath" conf="runtime" type="jar"/>
<pathconvert property="converted_all_classpath" refid="all_classpath" pathsep=" " dirsep="/">
<map from="/" to="file:////"/>;
</pathconvert>
<jar jarfile="pathing.jar" filesetmanifest="merge">
<manifest>
<attribute name="Class-Path" value="${converted_all_classpath}"/>
</manifest>
</jar>
</sequential>
</macrodef>
一般需要做个pathcovert,加上一个file:///的前缀: http://en.wikipedia.org/wiki/File_URI_scheme
对于gradle,解决方案是:http://stackoverflow.com/questions/5434482/how-can-i-create-a-pathing-jar-in-gradle
创建pathing jar的更多相关文章
- IDEA 创建maven jar、war、 pom项目
创建java jar.pom项目时创建maven-archetype-quickstart 创建java war项目时创建maven-archetype-webapp
- maven项目使用自己创建的jar包--maven without test code
eclipse版本为2018-12(4.10.0) 1.创建一个jar包 首先自己建立了一个maven project,名为jweb.GAV坐标: <groupId>amberai< ...
- 使用spring boot创建fat jar APP
文章目录 介绍 build和run fat jar和 fat war 更多配置 介绍 在很久很很久以前,我们部署web程序的方式是怎么样的呢?配置好服务器,将自己写的应用程序打包成war包,扔进服务器 ...
- Linux下的压缩和解压缩命令——jar
原文链接:http://blog.chinaunix.net/uid-692788-id-2681136.htmlJAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包.当然也是有 ...
- maven 间接依赖的jar自动引入
很多时候,我们引用的第三方jar需要一些其他的第三方jar,这个时候默认情况下,间接需要依赖的第三方jar是不会自动被引入的,如果希望这些额外的三方jar被自动引入,则在Maven仓库中除了提交jar ...
- jar命令的用法详解
本文详细讲述了JAR命令的用法,对于大家学习和总结jar命令的使用有一定的帮助作用.具体如下: JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包.当然也是有区别的,JAR包中 ...
- .bat文件和Jar包的生成及运行
.bat文件和Jar包的生成及运行 1.Jar包简单介绍 Jar包是Java中所特有的一种压缩文档,有点类似于zip包,区别在于Jar包中有一个META-INF\MANIFEST.MF文件(在生成Ja ...
- 转:linux下jar命令与jar包
原文链接:http://blog.chinaunix.net/uid-692788-id-2681136.htmlJAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包.当然也是有 ...
- jar包合并
多个jar包合并: 1.首先将所以要合并的jar包解压到同一目录中.jar xvf xxx.jar 2.用jar命令将所有.class, .aidl文件打包. jar cvf output.jar ...
随机推荐
- Linux简介及常用命令使用2--linux常用命令:查看 删除 编辑 创建等
cd . // 进入当前目录 cd ~ //进入根目录 pwd //当前路径 echo "my name is makaidong">makai ...
- iOS 实现Tabbarcontroller中间自定义样式 最简单的方法
先上图: 如果我们要实现中间按钮自定义样式,方法应该蛮多,这里介绍一种最简单的. 1.创建类继承:UITabBarController,如下代码都是写在该类的 .m文件里 2.定义最中间的自定义样式, ...
- 深度学习笔记------windows系统下进行Linux-Ubuntu14.04双系统安装笔记(二)
在上一篇文章中介绍了新手如何安装Ubuntu14.04的双系统,本文会说明Ubuntu系统下搜狗输入法的安装,并就我遇见的一些bug给出最简单的解决办法. 第一部分.搜狗输入法的安装 本身搜狗输入法的 ...
- proteus 运行出错,用户名不可使用中文!
仿真的时候提示如图提示 cannot open ’c\user\小名\AppData\local\temp\LISA0089.sdf’ 系统用户名不能是中文! 解决办法:重新建立个账户,记得用英文命名 ...
- 学习shell中遇到的一些基础问题总结
今天入门Shell脚本编程:今天的目标是完成冒泡排序,遇到了很多问题,总结了一下: 我从c转到shell遇到了这样的一些情况: 1:首先这几个符号非常重要 $变量:把变量的值拿出来使用(所以赋值语句应 ...
- 32-bit Assembly on x86_64 Linux (Use Nasm and ld&gcc)
Assembly on x86_64 Linux Some instructions in Intel assembly set are invalid in x86_64 env. e.g. aaa ...
- cuda多线程间通信
#include "cuda_runtime.h" #include "device_launch_parameters.h" #include <std ...
- Codevs1378选课[树形DP|两种做法(多叉转二叉|树形DP+分组背包)---(▼皿▼#)----^___^]
题目描述 Description 学校实行学分制.每门的必修课都有固定的学分,同时还必须获得相应的选修课程学分.学校开设了N(N<300)门的选修课程,每个学生可选课程的数量M是给定的.学生选修 ...
- web 小知识
document.write和innerHTML的区别 document.write是直接写入到页面的内容流,如果在写之前没有调用document.open, 浏览器会自动调用open.每次写完关 ...
- QC学习一:Windows环境中Quality Center 9.0安装详解
一.安装前准备 1.安装环境:windows XP.SQL Server2005 2.准备安装文件:Quality Center 9.0 (qc10以上,包括qc10,qc只支持安装在服务器操作系统上 ...