考虑下面的代码:import java.io.File;
import javax.swing.JOptionPane;
public class Runner { public static void main(String[] args) {
File file  = new File("./Data/123.cm");
String s = "file.exists():   " + file.exists();
JOptionPane.showMessageDialog(null, s);
}}
在程序目录下放一个Data文件爽并在该文件爽下放一个123.cm文件,构成文件目录如下当前文件爽/
  Runner.class
  Data/
    123.cm运行程序,运行结果显示能找到文件,但是将程序打包成inf.jar后,双击运行inf.jar,显示找不到文件了,如何解决,我的程序一定要打包成jar发布的。谢谢!

解决方案 »

  1.   

    当然,上面说的“将程序打包成jar”是将Data文件爽一起打包的。
      

  2.   

    资源文件打到jar包里面就找不到了,除非你编程解包
      

  3.   

    数据,配置打包很正常!!!ClassLoader ctxClsLdr = Thread.currentThread().getContextClassLoader();
        InputStream in = ctxClsLdr.getResourceAsStream("META-INF/MANIFEST.MF");
    从InputStream读取数据/配置,不用教了吧
        Properties props = new Properties();
        props.load(in);
        props.list(System.out);
      

  4.   

    推荐ECLIPSE插件,FATJAR可以将所有文件打在一起非常简单易用