0

我创建了一个应用程序,其中所有标签都是从名为 text.properties 的文件中获取的,它在我的 IDE 中运行良好,但是当我使用命令提示符运行 jar 文件时,会出现以下错误。

Oct 04, 2013 9:28:14 AM Main.LoginFrame <init>
SEVERE: null
java.io.FileNotFoundException: text.properties (The system cannot find the file
specified)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(Unknown Source)
    at java.io.FileInputStream.<init>(Unknown Source)
    at GraphicUserInterface.LoginFrameGUI.initializingLoginElements(LoginFra
meGUI.java:30)
    at Main.LoginFrame.<init>(LoginFrame.java:72)
    at Main.Main.main(Main.java:41)

Exception in thread "main" java.lang.NullPointerException
    at Main.LoginFrame.<init>(LoginFrame.java:81)
    at Main.Main.main(Main.java:41)

调用此属性文件的示例代码如下所示

Properties prop=new Properties();
prop.load(new FileInputStream("text.properties"));
logFrame.usernamelbl = new JLabel(prop.getProperty("lusernamelbl"));

过去,同样的方法对我有用。我已将属性类型复制到 netbeans 项目文件夹中。请帮助我找到解决方案。

4

2 回答 2

1

您可以classpath在命令提示符中设置或提供属性文件的绝对路径以使其工作。

prop.load(new FileInputStream("full/path/where/the/file/is/text.properties"));
于 2013-10-04T04:21:54.453 回答
0

我解决了这个问题。您只需将属性文件复制到 jar 文件所在的位置。

于 2013-10-04T07:09:46.837 回答