是否有任何Java库来操作像http.conf的Unixconfiguration文件

有非常好的Perl库(例如Apache :: Admin :: Config )来操作传统的Unixconfiguration文件,如httpd.conf。 任何人都知道有没有好的Java库来做类似的任务?

我知道有一个叫做Augeas和Java绑定的ac库。 有没有人使用过?

谢谢!

Solutions Collecting From Web of "是否有任何Java库来操作像http.conf的Unixconfiguration文件"

我(从编程的角度来看,对于一个项目),有许多像Apache,Squid,smtpd,ldap,相反,每个项目都定义了自己的ad-hoc格式,并实现了自己的自定义分析器。 没有共同的规范。

因此,在* nix项目配置文件的方法不是“使用解析器库”,而是“编写自己的解析器”。

然而,有些项目试图坚持某种标准。 最常见的amus是.ini文件格式 (起源于OS / 2和Windows)或GConf文件格式 ,因此您可能会发现随时可用的解析器。

Apache(阅读a-patch-e,如许多补丁所做的)是自由形式的类。 它以一个var value格式开始,然后在很多“修补”之后,添加了一个warty-xmlish语法来指定配置变量的范围和上下文。

  • 如果你只是调整配置文件的一部分,可能你最好的办法是扫描文件寻找你想要的配置变量,然后在本地处理文件。
  • 但是,如果您需要配置整个文件,那么最好使用基于C语言的Java解析器。

这是我为自己的目的而开发的一个Java库。

https://github.com/kkapelon/Apache-Httpd-conf-Reader

这是非常早期的阿尔法。 使用风险自负。 对于任何反馈,我们都表示感谢。

这里是一个Java库,可以用来解析Apache服务器配置。 ApacheConfParser

为此目的,似乎没有一个现有的图书馆。 但是,您可以使用Augeas ,一个用于编辑配置文件的库。 但是,与您正在搜索的解决方案不同,您需要告诉Augeas如何预先解释配置文件,这可能需要花费更多的时间。

Augeas的确具有Java绑定,并且也有一个Httpd镜头,所以这绝对是一个可以接受的解决方案。

Commons配置操作配置文件。

即使它也提供了一个选项来将操作的属性保存在一个新的文件中。

 PropertiesConfiguration config = new PropertiesConfiguration("usergui.properties"); config.setProperty("colors.background", "#000000); config.save("usergui.backup.properties); 

请参阅以下链接

http://commons.apache.org/configuration/userguide/howto_filebased.html#File-based_Configurations

甚至,Apache Ant也可以帮助您使用自己的PropertyHelper实现来操作现有的配置文件。

http://ant.apache.org/manual/properties.html#propertyHelper

在回应评论后编辑

Apache配置确实使用Bean Factory提供可扩展性,您需要自己创建Apache配置文件httpd.conf域类,以使其工作。

在java中定义Apache模块,你可以看一下Netloony的源代码,service / apache / modules对此有一个想法。

http://netloony.sourceforge.net/userguide/intro.html

在netloony中,配置文件的值在JTable中显示,您需要使用任何配置框架将其保存在文件中。

希望这可以帮助,我明白没有什么出来的框在Java目前读取Apache的conf文件。 我正在尝试给你一个指针,你可以从哪里开始