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的更多相关文章

  1. IDEA 创建maven jar、war、 pom项目

    创建java jar.pom项目时创建maven-archetype-quickstart 创建java war项目时创建maven-archetype-webapp

  2. maven项目使用自己创建的jar包--maven without test code

    eclipse版本为2018-12(4.10.0) 1.创建一个jar包 首先自己建立了一个maven project,名为jweb.GAV坐标: <groupId>amberai< ...

  3. 使用spring boot创建fat jar APP

    文章目录 介绍 build和run fat jar和 fat war 更多配置 介绍 在很久很很久以前,我们部署web程序的方式是怎么样的呢?配置好服务器,将自己写的应用程序打包成war包,扔进服务器 ...

  4. Linux下的压缩和解压缩命令——jar

    原文链接:http://blog.chinaunix.net/uid-692788-id-2681136.htmlJAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包.当然也是有 ...

  5. maven 间接依赖的jar自动引入

    很多时候,我们引用的第三方jar需要一些其他的第三方jar,这个时候默认情况下,间接需要依赖的第三方jar是不会自动被引入的,如果希望这些额外的三方jar被自动引入,则在Maven仓库中除了提交jar ...

  6. jar命令的用法详解

    本文详细讲述了JAR命令的用法,对于大家学习和总结jar命令的使用有一定的帮助作用.具体如下: JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包.当然也是有区别的,JAR包中 ...

  7. .bat文件和Jar包的生成及运行

    .bat文件和Jar包的生成及运行 1.Jar包简单介绍 Jar包是Java中所特有的一种压缩文档,有点类似于zip包,区别在于Jar包中有一个META-INF\MANIFEST.MF文件(在生成Ja ...

  8. 转:linux下jar命令与jar包

    原文链接:http://blog.chinaunix.net/uid-692788-id-2681136.htmlJAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包.当然也是有 ...

  9. jar包合并

    多个jar包合并: 1.首先将所以要合并的jar包解压到同一目录中.jar xvf xxx.jar 2.用jar命令将所有.class, .aidl文件打包. jar cvf output.jar   ...

随机推荐

  1. 15、安全工程师要阅读的书籍 - IT软件人员书籍系列文章

    信息安全工程师是一个比较新兴的角色.在2016年今年的下半年软考就将安全工程师纳入了考试科目,说明国家对安全工程师的需求还是不错的.安全工程师包括硬件和软件两块内容吧.这里描述的安全工程师主要是针对软 ...

  2. java获取客户端ID地址

    转:http://zhenchengchagangzi.iteye.com/blog/1199300#bc2372048 在JSP里,获取客户端的IP地址的方法是:request.getRemoteA ...

  3. UNABLE TO PURGE A RECORD(二)

    上一篇文章说明了bug出现的原因和原理分析,要修复bug似乎已经水到渠成了,但远没有这么简单,只因为“并发”.要修复问题,首先要做的第一件事情是稳定的复现问题.由于数据库系统是一个并发系统,并且这个b ...

  4. Caused by: java.lang.NoClassDefFoundError: org/objectweb/asm/Type

    使用 proxy-target-class="true" 强制配置了 cglib 代理,于是包上面的错误,加入了 asm.jar 报也一样报错. 错误原因是,lib 中有两个cgl ...

  5. English -有感过四六级后的托福单词表-附下载

    好像自从上学期不高不低过了六级之后就没怎么持续接触英语的东西了,欧,除了要debug的时候遇到问题了,去Google到了再用那些仅有的英语知识去看别人的文章.可能是因为看到的都是自己平时接触过的方面的 ...

  6. emacs 新手笔记(二) —— 分割窗格 (split window)

    初极狭,才通人.复行数十步,豁然开朗.—— 陶渊明·桃花源记 ilocker:关注 Android 安全(新入行,0基础) QQ: 2597294287 使用 split-window-xxx 函数可 ...

  7. spring为什么不能注入static变量

    Spring 依赖注入 是依赖 set方法 set方法是 是普通的对象方法 static变量是类的属性 @Autowired private static JdbcTemplate jdbcTempl ...

  8. Windows Azure 虚拟机的IP地址操作

    Windows Azure上的一个虚拟机对应两个IP地址,VIP和DIP. VIP,公网IPv4地址,动态分配.虚拟机停止(deallocate,在管理控制台上关机或者使用PowerShell关机)后 ...

  9. POJ1155TELE[树形背包]

    TELE Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 4957   Accepted: 2726 Description ...

  10. AC日记——删除单词后缀 openjudge 1.7 20

    20:删除单词后缀 总时间限制:  1000ms 内存限制:  65536kB 描述 给定一个单词,如果该单词以er.ly或者ing后缀结尾, 则删除该后缀(题目保证删除后缀后的单词长度不为0), 否 ...