程序需要的图片最好放在你包里面,比如在org.image里面,这样jb编译的时候自动会将这些图片一起生成到classes目录,然后根据这个目录打包或者直接用jb生成jar肯定会有的

解决方案 »

  1.   

    不懂!比如说我写的是com.borland.test.java工程文件test.jpx我要在test.java中使用图片1.gif,现在的做法是直接调用1.gif而且它是在和test.jpx同级目录下。按照您的说法该怎么放?谢谢!
      

  2.   

    在你源程序目录下建一个image目录,比如com/borland/image
    这样编译project的时候就会自动将这些图片编译到classes对应的包里面程序可以下面这样用
    ImageIcon img = new ImageIcon((test.class).getResource("/com/borland/image/work.gif"));
      

  3.   

    即使是用jar命令打包,目录下的图片也会被打进去的。
      

  4.   

    还是不行!
    我的结构如下:工程根目录emc下面有src,class等目录和工程文件emc.jpx图片在emc\emc\images下面,在程序中使用的是emc\emc\images\1.gif在jbuilder中运行可以,可是打包之后就是说找不到该图片。(包名emc.jar,包下面有emc\images\1.gif这个文件)
      

  5.   

    你不是放在源程序同级目录肯定没有拉。
    看你的结构好像是emc
                       -----src
                               --------java文件
              -----image
    改成emc
           -----src
                   ----java文件
            ----其它包
            ----image
      

  6.   

    改成emc
           -----src
                   ----java文件
            ----其它包
            ----image
                      ------1.gif
    程序中该怎么写????????
    把图片放进专门的包里面去,怎么放,请您说的详细点好吗???
      

  7.   

    在jb中很多情况会造成打不进包里,如果你的图片文件类型没问题的话,检查一下你的文件名,最好全改成小写,特别是后缀。如果不行的话,可能就是你的图片文件类型有问题了,在JB里不认你这种文件,必须添加,说起来有点烦,再说吧!
      

  8.   

    假如目录结构为
    emc
           -----src
                   ----com
                          ----borland
                                     ----tool
                                              ----Test.java
                              ----image
                                              ----work.gif
    程序可以下面这样用
    ImageIcon img = new ImageIcon((Test.class).getResource("/com/borland/image/work.gif"));
      

  9.   

    目录为:
    emc 
      ----src
          ----emc
             -------1.gif
    我在代码里面使用button = new JButton(new ImageIcon("/emc/1.gif"));
    jb中运行找不到图片,打包生成emc.jar下面有emc.1.gif,运行依然找不到图片!
      

  10.   

    要不然您给我写个简单的例子,能够在jb中运行,能够在打包情况下运行![email protected]
      

  11.   

    Acylas谢谢,已经收到,按照您的方法可以实现。您能否解释一下,为什么我的方法不可以?