Eclipse项目依赖项在导出时不起作用

时间:2015-07-11 11:56:03

标签: eclipse maven frameworks project

我目前正面临以下大问题:

我有一个Framework-Project(maven),其中包含一个PropertyReader(在同一个包中读取“config.properties”并返回其值):

这是Framework-Project:

Framework-Project

public class PropertyReaderFramework {
    private static Properties props;

    private static void init(){
        String filename = "com/ks/framework/properties/config.properties";
        InputStream input = PropertyReaderFramework.class.getClassLoader()
                .getResourceAsStream(filename);
        if (input == null) {
            System.out.println("Sorry, unable to find " + filename);
            props = null;
        } else {
            props = new Properties();
        }

        try {
            props.load(input);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public static String getProperty(String key){
        if(props == null) init();
        return props.getProperty(key);
    }

    public static Properties getProperties(){
        if(props == null) init();
        return props;
    }

}

我的主项目,我需要属性文件的信息只有一个类(用于演示):

package testmsg;

import com.ks.framework.properties.PropertyReaderFramework;

public class main {

    public static void main(String[] args) throws InterruptedException {

        try {
            String basepath = PropertyReaderFramework.getProperty("remoteFileAccess.script.location");
            System.out.println(basepath);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            Thread.sleep(5000);
        }

    }
}

有趣的是,如果我在eclipse中执行main()类,它会正确地从属性中读取值。

但是当我将其导出为可运行的JAR时,它会引发我的错误:

Errormessage when Exported

任何人都可以帮我解决这个问题吗?我无法弄清楚为什么它会像那样......

0 个答案:

没有答案