在 install4j 编译器变量中使用正则表达式

Using Regex in install4j Compiler Variable

在安装过程中,install4J 会寻找特定的文件格式来加载(然后提取)。文件格式如下:

server_${compiler:component_name}_${compiler:modality_version}_${compiler:modality_os}_BN${compiler:timestamp}.tar.gz

除最后一个编译器变量(时间戳)外,一切正常。我希望该变量是一个正则表达式:

([0-9]{4})(0[1-9]|1[0-2])(0[1-9]|[1-2][0-9]|3[0-1])(2[0-3]|[01][0-9])([0-5][0-9])

但是,install4j 无法确定我给它的是一个正则表达式而不是硬编码变量。

我该如何解决这个问题?

目前,我在构建过程中得到了这个:

[INFO]       [WARNING] The path "..\..\target\resources\archives\server_merch_4.1_SP1_win-x86-64_BN([0-9]{4})(0[1-9]|1[0-2])(0[1-9]|[1-2][0-9]|3[0-1])(2[0-3]|[01][0-9])([0-5][0-9]).tar.gz" does not exist.

如果这不可能,有没有办法使用通配符“*”?

在 install4j 中没有 ad-hoc 正则表达式模式匹配。

使用“设置变量”操作,您自己列出文件并将匹配的文件写入安装程序变量。在读取文件的操作中,您可以使用表达式 ${installer:myVariable},其中 myVariable 是在“设置变量”操作中配置的变量名称。