我編寫了一個java程序,並使用了一個配置文件來讀取所有靜態信息。 我多次使用配置文件,但這次,程序無法從中讀取信息。無法讀取配置文件中的信息
這裏是我的Config
類:
public class Config {
private static final PropertiesReader PROPS_READER = new PropertiesReader("/config.properties");
public static final int HOUR = PROPS_READER.getInt("hour");
public static final int MINUTE = PROPS_READER.getInt("minute");
public static final int SECOND = PROPS_READER.getInt("second");
public static final Long DELAY = PROPS_READER.getLong("delay");}
這裏是我的PropertiesReader
類:
import java.io.IOException;
import java.util.Properties;
public class PropertiesReader {
private final Properties PROPS = new Properties();
public PropertiesReader(String path){
try {
PROPS.load(PropertiesReader.class.getResourceAsStream(path));
} catch (IOException ex) {
ex.printStackTrace(System.err);
}
}
public String getString(String key) {
return PROPS.getProperty(key);
}
public int getInt(String key) {
return Integer.valueOf(getString(key));
}
public long getLong(String key) {
return Long.valueOf(getString(key)) ;
}
}
這裏的地方,我叫Config
:
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, Config.HOUR);
cal.set(Calendar.MINUTE, Config.MINUTE);
cal.set(Calendar.SECOND, Config.SECOND);
,它是我得到了錯誤:
Exception in thread "main" java.lang.NoSuchFieldError: HOUR
Confige文件:
# To change this template, choose Tools | Templates
# and open the template in the editor.
hour=11
minute=3
second=0
delay=1200
我用Netbeans 7.3
作爲我的IDE和jdk1.7
。 我應該提到,只要我不使用配置文件,我的程序工作正常。 這是我第一次遇到這個問題,我無法修復它。我會很感激任何建議。
請分享配置文件 – Paolof76
清理項目並重新編譯它。運行時NoSuchFieldError異常 – 2014-02-23 08:59:22
首先設置MINUTE值以查看發生了什麼。 – bvj