在运行时通过 java 中的命令提示符加载配置文件(project.properties)

Posted

技术标签:

【中文标题】在运行时通过 java 中的命令提示符加载配置文件(project.properties)【英文标题】:load config file (project.properties) at runtime via command prompt in java 【发布时间】:2014-05-15 04:09:48 【问题描述】:

我想在 java 中通过命令提示符加载属性文件。

属性文件名:project.properties

java -classpath .;test.jar; com.project.Main

如果我通过命令提示符加载属性文件,命令是什么。

提前致谢。

我已经在命令提示符下执行了下面提到的命令,但没有得到任何输出。

java -classpath .;test.jar; -DPROP_FILE="C:\Program Files\DemoApp\config\project.properties" com.project.Main

【问题讨论】:

【参考方案1】:

发送文件路径如下格式,

java -classpath .;test.jar; -DPROP_FILE=conf\project.properties com.project.Main

使用以下代码获取属性文件

String propFile = System.getProperty("PROP_FILE");
Properties props = new Properties();
props.load(new FileInputStream(propFile));

谢谢。

【讨论】:

我执行了下面提到的命令,但无法读取该文件。 java -classpath .;test.jar; -DPROP_FILE="C:\Program Files\DemoApp\config\project.properties" com.project.Main 应该可以正常工作。请在此处发布您的 java 代码。【参考方案2】:

运行java -classpath .;test.jar; com.project.Main project.properties,然后在你的main方法中读取这个参数并加载文件。

 public static void main(String[] args) 
     String fileName = args[0];
     Properties prop = new Properties();
     InputStream in = getClass().getResourceAsStream(fileName);
     prop.load(in);
 

【讨论】:

【参考方案3】:
java -classpath c:\java Client test.properties 

"c:\java" 是类路径 - 更改为您的 java 类路径

【讨论】:

【参考方案4】:

在您的代码中将其加载为java.util.ResourceBundle:

ResourceBundle properties = ResourceBundle.getBundle("project");

您可以通过ResourceBundle API 访问属性。

启动应用时将属性文件放在类路径中:

java -classpath .;test.jar;project.properties com.project.Main

【讨论】:

以上是关于在运行时通过 java 中的命令提示符加载配置文件(project.properties)的主要内容,如果未能解决你的问题,请参考以下文章

使用java命令运行class文件提示“错误:找不到或无法加载主类“的问题分析

java程序运行时提示 错误:找不到或无法加载主类 com.sun.tools.javac.main

Java导入package编译后运行时提示无法加载主类的解决办法

无法通过Java运行命令,但可以通过cmd运行它CreateProcess error = 2,系统找不到指定的文件

看电脑配置的命令行

Java文件不能运行(找不到或无法加载主类)怎么解决。