我用jar命令打包后资源文件读取不到,请高手帮忙项目中src和bin目录是分开的,项目根目录下有music和images两个文件夹,打包时我把music和images拷贝到了bin目录下在dos下进入bin目录,输入命令 jar cvfm xxx.jar bin/ .  进行打包,music和images目录被打进了jar包中,但是程序运行后却找不到资源文件,不知为什么,高手救命

解决方案 »

  1.   

    你有jar cvfm怎么没指定m参数的manifest.mf,还有你的music和music放置的目录对嘛
      

  2.   

    Sharpen your code-java高级群:78455879欢迎您的加入...
      

  3.   

    Sharpen your code-java高级群:78455879欢迎您的加入...
      

  4.   


    忘写了,我加了.mf文件的,放在bin目录下的lovo09下在dos下进入bin目录,输入命令 jar cvfm xxx.jar lovo09/xx.mf bin/ .  进行打包
      

  5.   

    你的资源文件是怎么加载的?试试这个:
    InputStream is = ClassLoader.getSystemResourceAsStream("com/bao/resource/abc.txt");
      

  6.   

    我是这么加载的
    Toolkit.getDefaultToolkit().getImage("image/wolfrun1.gif");bh = Applet.newAudioClip(new File("music//bh.wav").toURL());
      

  7.   

    如果这样的话,那就把这些资源文件搬出,不要打成 jar 看看呢
      

  8.   

    你的物理路径不对吧,还有你直接在工具里面打包吗,为什么要dos里面打包容易发生问题啊
      

  9.   


    用了fat_jar但项目根目录下的music和image目录不能识别
      

  10.   

    你把资源文件和要运行的jar包放一起看看呢,然后把里面的资源的路径都设为本地(即:原来是“D:\XX\XX.XX”改为"xx.xx")。
      

  11.   

    不用打进去的,根目录下的music和image目录没必要打进去啊~~
    比如你现在的目录是:
    根---src
    ----------package1
    ----------package1
    -----music
    -----image
    那么你打包后只要这么放程序就不会出问题啊:
    根--jar包
    -----music
    -----image我原来试过的,是没问题的,前提是,用的是相对路径
      

  12.   

    例:在一个名为java的文件夹下,有一个包名为chess,包中有一个Chess.java的类,
    则在java文件夹下建立一个manifest.mf的文件,文件中写明:
    Main-Class: 包名.类名(如:chess.Chess)(此行写完后必须回车)然后进入java文件夹下,输入命令:jar cvfm chess.jar manifest.mf .
    然后再输入命令:java -jar chess.jar