import org.apache.tools.ant.filters.ReplaceTokens
+//import org.apache.tools.ant.filters.ReplaceRegexp
import org.gradle.internal.os.OperatingSystem
buildscript {
include install4jTemplate
rename (install4jTemplate, install4jConfFile)
filter(ReplaceTokens, beginToken: '', endToken: '', tokens: ['9999999999': JAVA_VERSION])
- filter(ReplaceTokens, beginToken: '$$', endToken: '$$', tokens: ['JAVA_VERSION': JAVA_VERSION, 'JAVA_INTEGER_VERSION': JAVA_INTEGER_VERSION, 'VERSION': JALVIEW_VERSION, 'MACOS_JAVA_VM_DIR': macosJavaVMDir, 'MACOS_JAVA_VM_TGZ': macosJavaVMTgz, 'WINDOWS_JAVA_VM_DIR': windowsJavaVMDir, 'WINDOWS_JAVA_VM_TGZ': windowsJavaVMTgz])
+ filter(ReplaceTokens, beginToken: '$$', endToken: '$$',
+ tokens: [
+ 'JAVA_VERSION': JAVA_VERSION,
+ 'JAVA_INTEGER_VERSION': JAVA_INTEGER_VERSION,
+ 'VERSION': JALVIEW_VERSION,
+ 'MACOS_JAVA_VM_DIR': macosJavaVMDir,
+ 'MACOS_JAVA_VM_TGZ': macosJavaVMTgz,
+ 'WINDOWS_JAVA_VM_DIR': windowsJavaVMDir,
+ 'WINDOWS_JAVA_VM_TGZ': windowsJavaVMTgz,
+ 'INSTALL4JINFOPLISTFILEASSOCIATIONS': install4jInfoPlistFileAssociations
+ ]
+ )
if (OSX_KEYPASS=="") {
filter(ReplaceTokens, beginToken: 'codeSigning macEnabled="', endToken: '"', tokens: ['true':'codeSigning macEnabled="false"'])
filter(ReplaceTokens, beginToken: 'runPostProcessor="true" ',endToken: 'Processor', tokens: ['post':'runPostProcessor="false" postProcessor'])
}
}
into install4jDir
- inputs.files("$install4jDir/$install4jTemplate")
outputs.files(install4jConf)
+
+ doLast {
+ def installerFileAssociationsXml = file("$install4jDir/$install4jInstallerFileAssociations").text
+ ant.replaceregexp(
+ byline: false,
+ flags: "s",
+ match: '<action name="EXTENSIONS_REPLACED_BY_GRADLE".*?</action>',
+ //match: '<action.*?EXTENSIONS_REPLACED_BY_GRADLE.*?</action>',
+ replace: installerFileAssociationsXml,
+ file: install4jConf
+ )
+ }
}
task installers(type: com.install4j.gradle.Install4jTask) {