Jar包的Source在“C:/Src/AppTest/”下如果我把批处理命令CreateJar.cmd放在“C:/Src/AppTest/”下:
  CreateJar.cmd命令里写“jar cvf AppTest.jar *” 即可但是由于有很多个Jar包需要编译,所以不能写成固定的路径。
需要把批处理命令CreateJar.cmd 放在“C:/Src/”下,该如何写Jar命令,才能生成该Jar包---偶Dos太菜了,汗一下,先

解决方案 »

  1.   

    你要先编译吧?
    javac *.java
      

  2.   

    关注楼主的问题我也碰到过,一直没有解决。后来选了另外一种方式
    利用ant编译和打包,现在用用也有1年多了感觉还比较好用。<project name="cardsystem-project" basedir="." default="jar">
    <property name="src" value="src"/>
    <property name="lib" value="lib"/>
    <property name="build" value="build"/>

    <path id="classpath">
    <fileset dir="${lib}">
    <include name="**/*.jar"/>
    </fileset>
    </path>

    <!-- 编译 -->
    <target name="compile" depends="">
    <!-- Compile the java code from ${src} into ${build} -->
    <javac source="1.6" srcdir="${src}" destdir="${build}" classpathref="classpath" />
    </target>

    <!-- 打包 -->
    <target name="jar" depends="compile">  
    <jar destfile="./cardsystem.jar" basedir="${build}"   >  
    <manifest>  
    <attribute name="Built-By" value="xxx"/>
    <attribute name="Company" value="xxx"/>
    <attribute name="Main-class" value="MainFrame"/>  
    </manifest>

    <zipfileset src="${lib}/dom4j-1.6.1.jar"/> 

    <zipfileset src="${lib}/log4j-1.2.14.jar"/>
    <zipfileset src="${lib}/commons-logging-1.1.jar"/>
    <zipfileset src="${lib}/commons-logging-adapters-1.1.jar"/>

    </jar>
    </target>
    </project>
      

  3.   

    To yangxiao_jiang(哈哈)
    java 已经编译过了,运行jar cvf AppTest.jar *已经生成了AppTest.jar 文件To irvine007(┣━┫Rvine)
    谢谢先
    我觉得Ant应该也是用同样的方法实现的,我想如果知道如何用CMD命令实现,就更容易理解ant
    而且,我觉得这个问题有可能其他的Java命令也会遇到
      

  4.   

    其实Jar命令有个[-C]参数,看帮助应该是把这个参数设置好就可以了,不过我试了几次,都没设置对,也没找到例子,郁闷
      

  5.   

    其实还有个较笨笨的方法,不过也勉强可以实现,将CreateJar.cmd修改如下:
    cd AppTest
    jar cvf AppTest.jar * 这样就成了,但偶觉得寒了点,应该有在Src文件夹下就能编译该Jar包的命令。
      

  6.   

    jar -cvf AppTest.jar -C AppTest/*
      

  7.   

    To huoyin(多情剑客) 
    谢谢先
    不过,当我执行以下命令,编译时,正常运行
    cd AppTest
    jar cvf AppTest.jar * 运行jar -cvf AppTest.jar -C AppTest/* 时出错
    打开Jar包比较了一下,发现执行这两个命令生成的Jar包结构不一致,看来偶还得查查生成Jar包结构的问题