【发布时间】:2015-03-23 17:03:53
【问题描述】:
我考虑的问题是如何编写可以轻松知道所需配置文件的位置的代码,并且无需任何编辑即可从一个环境移植到另一个环境。我们不想编辑配置文件的位置以使代码适应每个新环境,例如每次将代码从开发环境移动到生产环境时。该方法不应依赖非普遍可用的资源,例如对用户定义的环境变量的访问或对特定目录的访问。例如,使用 DOCUMENT_ROOT 作为配置文件的基本位置似乎是可行的方法,但这并不普遍。首先,在命令行环境中 DOCUMENT_ROOT 没有意义。其次,程序员可能只能访问 DOCUMENT_ROOT 的子文件夹。另一个要求是配置文件可以依赖于运行时已知的值,比如调用应用程序的用户,如这个问题How to load a config file based on user selection from "unknown" location。
问题不是在特定环境下配置文件的最佳位置是什么,比如Location to put user configuration files in windows。程序员仍然需要找出最佳位置,以便最终用户可以轻松找到配置文件。问题是这个位置,不管它是什么,即使它取决于运行时已知的值,如何以可移植的方式传递给代码。
【问题讨论】:
标签: configuration updates directory-structure