我有一个 Java 项目,其中包含包 pack
内名为 runProgram
的程序和名为 config.properties
的配置文件。我正在尝试从 Windows 7 中的命令提示符将项目作为 .jar
文件运行。但我不知道如何指示我要使用的特定配置文件。我尝试使用文件名“打开文件”,但没有成功。
程序:
package pack;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;
public class runProgram {
public static void main(String[] args){
double value;
Properties configFile = new Properties();
try {
configFile.load(helloworld.class.getClassLoader().getResourceAsStream(
"\\pack\\config.properties"));
} catch (IOException e) {
e.printStackTrace();
}
value = Double.parseDouble(configFile.getProperty("value"));
System.out.println("Value is: "+value);
}
}
配置文件:
value = 75
最佳答案
我试了一下,但我不知道我是否正确地理解了你的问题。
But I don't know how to indicate the specific configuration file that I want to use.
如果这是关于运行该工具,同时每次都指定另一个配置文件,我会选择 Apache CLI ,解析和处理命令行参数。然后,用户可以在每次运行您的工具时指定该文件。 (在“用法”下,您可以找到一些示例,但我现在不允许发布两个以上的链接)
但是如果您想了解有关处理 java 属性文件的更多信息,这里有一个很好的教程: http://www.mkyong.com/java/java-properties-file-examples/
此外,对于独立于操作系统的路径定义,请查看 System.getProperty("file.separator")
,顾名思义,它尝试接收操作系统特定的路径分隔符(例如,“\”用于 Windows,“/”用于 UNIX 系统)。
希望这有帮助。
关于java - 使用命令行运行程序和配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31794799/