我的问题是关于.jar文件。在我的项目中,我使用 json 配置文件,该文件加载在我的.jar文件中。是否可以以某种方式使用不同的配置文件?我有一个使用服务器/客户端套接字完成的项目,我知道我会有很多客户端,我不想为每个配置文件创建很多客户端.jar我想使用一个主客户端.jar并通过不同的配置文件运行它。
如果您不明白,我将尝试在示例中解释:
也许可以制作自定义标志或其他东西?
java -jar -config Client.jar example/foo/config.json
java -jar -config Client.jar example/foo/config2.json
等等...我想有人会帮助我..:)
这里有两个选项:
- 将文件名作为参数传递,
- 将其作为系统属性传递
选项 1:
你会像这样运行你的罐子:
java -jar Client.jar example/foo/config.json
并在main(String[] args)
方法的第一个参数中获取文件名。
选项 2:
你会像这样运行你的罐子:
java -Dconfig=example/foo/config.json -jar Client.jar
您将通过调用System.getProperty("config")
来获取文件名。
第二种方法的优点是让文件名在程序中的任何位置可用,而第一种方法仅在主方法中使其可用。