【发布时间】:2016-10-12 05:54:05
【问题描述】:
- 我在我的 java 应用程序中使用了属性文件并在静态块中访问它。
static {
try {
properties = new Properties();
properties.load(new FileInputStream("Test.properties"));
} catch (Exception ex) {
ex.printStackTrace();
}
通过命令提示符创建并运行 jar 文件,能够从 jar 文件所在目录访问属性文件
示例:E:\test\ java-jar MyApplication.jar --> 这是 jar 所在的目录。这种方式工作正常
-
我想从其他目录运行这个 jar 文件,比如 as
示例:D:\result ---> 其他目录。现在我从这个目录运行 jar。
-
我尝试在提示符下运行使用此命令。
示例:D:\result\ java-jar E:\test\ MyApplication.jar
我有一个
java.io.FileNotFoundException: Test.properties (The system cannot find the file specified)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at MyApplication.<clinit>(MyApplication.java:47)
- 从目录外运行 jar 文件时如何访问属性文件?
【问题讨论】:
-
这是从同一目录工作的吗? n 请分享项目层次结构和属性文件的位置?
-
不,不同的目录。
-
你看过Jar吗,有
Test.properties吗? -
@RameshC 是的,我知道你想从不同的目录运行,但我问的是这是否从同一个目录工作。??因为这个问题我分为两部分一是test.propereties文件位置和其他系统路径从其他位置执行jar
-
想在同一个目录下工作?怎么办?