首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

可执行jar文件的有关问题

2012-01-19 
可执行jar文件的问题AntTestPro.jar包中manifest.mf的内容如下:Manifest-Version:1.0Ant-Version:ApacheAn

可执行jar文件的问题
AntTestPro.jar包中
manifest.mf的内容如下:
Manifest-Version:   1.0
Ant-Version:   Apache   Ant   1.6.5
Created-By:   1.4.2_09-b05   (Sun   Microsystems   Inc.)
main-class:   myant.test.AntTest
Class-Path:   C:\eclipse\workspace\AntTestPro\build\lib\log4j.jar

有两个java文件:
package   myant.test;

import   org.apache.log4j.Logger;
import   org.apache.log4j.PropertyConfigurator;

public   class   AntTest   {

        private   static   Logger   logger   =   Logger.getLogger(AntTest.class.getName());

        /**
          *   main   method
          *  
          *   @param   args
          */
        public   static   void   main(String[]   args)   {

                PropertyConfigurator.configure( "Log4j.properties ");

                logger.info( "main   method   is   start. ");

                MyPrint   mp   =   new   MyPrint();

                mp.myPrint();

                logger.info( "main   method   is   end. ");
        }

}

package   myant.test;

import   org.apache.log4j.Logger;

public   class   MyPrint   {
       
        private   static   Logger   logger   =   Logger.getLogger(MyPrint.class.getName());
       
        /**
          *   myPrint   method
          *  
          *   <br> This   method   prints   a   String.
          *
          */
        public   void   myPrint()   {
                logger.info( "myPrint   method   is   start. ");
                System.out.println( "Hi,   This   is   Ant   Test! ");
                logger.info( "myPrint   method   is   end. ");
        }

}

但是用:
jar   -jar   AntTestPro.jar
命令报错:
C:\eclipse\workspace\AntTestPro> java   -jar   AntTestPro.jar
Exception   in   thread   "main "   java.lang.NoClassDefFoundError:   myant/test/AntTest
再线等,谢谢了

[解决办法]
mf文件中去掉classpath,调用的时候附加所需要的类的jar文件到cp 试试
[解决办法]
classpath裏加個.;呢?
[解决办法]
参见
http://danmao.blogdriver.com/danmao/978761.html
在classpath处指定了你要用的jar应该就可以了
------解决方案--------------------


把log4j.jar也加到你的包里
[解决办法]
Class-Path: ./Lib/dom4j-1.6.1.jar ./Lib/mail.jar ./Lib/jemmy.jar ./Lib/activation.jar


我的程序的一个例子,这些jar文件都放在同级的外面目录下,没有和运行的jar打成一个包,你试一下了。注意大小写,包括目录的大小写,在windows下可能大小写不区别,在unix就区别。
[解决办法]
建议楼主用fatjar插件,很好使,不用你担心什么,全帮你搞定
[解决办法]
blog 更新:
think in java 各章后练习答案.....
http://blog.csdn.net/heimaoxiaozi/

热点排行