我的运行环境是机遇WEBLOGIC的,为什么必须停止服务才能生成一个完整的JAR包?

解决方案 »

  1.   

    用法:jar {ctxu}[vfm0Mi] [jar-文件] [manifest-文件] [-C 目录] 文件名 ...
    选项:
        -c  创建新的存档
        -t  列出存档内容的列表
        -x  展开存档中的命名的(或所有的〕文件
        -u  更新已存在的存档
        -v  生成详细输出到标准输出上
        -f  指定存档文件名
        -m  包含来自标明文件的标明信息
        -0  只存储方式;未用ZIP压缩格式
        -M  不产生所有项的清单(manifest〕文件
        -i  为指定的jar文件产生索引信息
        -C  改变到指定的目录,并且包含下列文件:
    如果一个文件名是一个目录,它将被递归处理。
    清单(manifest〕文件名和存档文件名都需要被指定,按'm' 和 'f'标志指定的相同顺序。示例1:将两个class文件存档到一个名为 'classes.jar' 的存档文件中:
           jar cvf classes.jar Foo.class Bar.class
    示例2:用一个存在的清单(manifest)文件 'mymanifest' 将 foo/ 目录下的所有
               文件存档到一个名为 'classes.jar' 的存档文件中:
           jar cvfm classes.jar mymanifest -C foo/ .
      

  2.   

    http;//j.topcool.net/ittraining/ittraining1.htm
      

  3.   

    在类中打包用 java.util.jar.* 来做吧
      

  4.   

    可能外部进程没有结束,可以清空标准输出流:
    Process p = Runtime.getRuntime().exec(cmdString);
    InputStream stdOut = p.getInputStream();
    InputStreamReader isr = new InputStreamReader(stdOut);
    BufferedReader br = new BufferedReader(isr);
    String line=null;
    while ( (line = br.readLine()) != null){}