0

我的Java项目中有一个.property文件。在该属性文件中有超过 20 个值。现在我想解析该属性文件并在运行时(即运行安装文件时)更改特定的属性值。我使用了以下代码

Section
    ${ConfigWrite} "C:resource\conf.properties" SET WEBSERVICE.URL=http://localhost:8080 $R0
    ;$R0=CHANGED
SectionEnd

运行exe文件后,属性文件中添加的属性如下

  SETSERVER.URL=http://localhost:8080

我不知道为什么 SET 单词出现在这个变量之前?

我的要求:

  1. 我需要在运行时(在安装exe文件时)为SERVER.URL属性赋值?

  2. 我需要替换SERVER.URL属性的值。但是使用上面的方法在该文件中添加了一个新属性。

我在 Windows 平台的Eclipse中使用了NSIS 插件。

4

1 回答 1

1

调用宏时缺少一些引号,也不需要指定SET(在帮助的示例中,SET实际上是 DOS 批处理文件中命令的一部分),我想最好在磁盘驱动器之后的路径。

该文档指出语法是:

${ConfigWrite} "[File]" "[Entry]" "[Value]" $var

因此,您的电话必须是:

${ConfigWrite} "C:\resource\conf.properties" "WEBSERVICE.URL" "=http://localhost:8080" $0

请注意参数如何在参数名称WEBSERVICE.URL和值之间拆分=http://localhost:8080(注意开头的等号)。

您也可以使目录动态化:

${ConfigWrite} "$INSTDIR\resource\conf.properties" "WEBSERVICE.URL" "=http://localhost:8080" $0
于 2012-09-19T07:29:21.823 回答