API文档: | CreateStartScripts |
---|
创建用于启动 JVM 应用程序的启动脚本。
例子:
task createStartScripts(type: CreateStartScripts) { outputDir = file('build/sample') mainClass = 'org.gradle.test.Main' applicationName = 'myApp' classpath = files('path/to/some.jar') }
注意:Gradle"application"
插件添加了一个名为 的此类型的预配置任务"startScripts"
。
该任务生成针对 Microsoft Windows 环境和类 UNIX 环境(例如 Linux、macOS)的单独脚本。实际的生成是通过类型的CreateStartScripts.getWindowsStartScriptGenerator()
和属性实现的。
CreateStartScripts.getUnixStartScriptGenerator()
ScriptGenerator
例子:
task createStartScripts(type: CreateStartScripts) { unixStartScriptGenerator = new CustomUnixStartScriptGenerator() windowsStartScriptGenerator = new CustomWindowsStartScriptGenerator() } class CustomUnixStartScriptGenerator implements ScriptGenerator { void generateScript(JavaAppStartScriptGenerationDetails details, Writer destination) { // implementation } } class CustomWindowsStartScriptGenerator implements ScriptGenerator { void generateScript(JavaAppStartScriptGenerationDetails details, Writer destination) { // implementation } }
默认生成器的类型为TemplateBasedScriptGenerator
,具有默认模板。可以通过该方法更改此模板TemplateBasedScriptGenerator.setTemplate(org.gradle.api.resources.TextResource)
。
此任务使用的默认实现使用Groovy 的 SimpleTemplateEngine 来解析模板,并提供以下变量:
applicationName
optsEnvironmentVar
exitEnvironmentVar
mainModule
mainClass
executableDir
defaultJvmOpts
appNameSystemProperty
appHomeRelativePath
classpath
例子:
task createStartScripts(type: CreateStartScripts) { unixStartScriptGenerator.template = resources.text.fromFile('customUnixStartScript.txt') windowsStartScriptGenerator.template = resources.text.fromFile('customWindowsStartScript.txt') }
财产 | 描述 |
applicationName | 应用程序的名称。 |
classpath | 应用程序的类路径。 |
defaultJvmOpts | 应用程序的默认 JVM 选项。默认为空列表。 |
executableDir | 在发行版中写入脚本的目录。 |
mainClass | 用于启动 Java 应用程序的主类名称。 |
mainModule | 用于启动模块化 Java 应用程序的主模块名称。 |
optsEnvironmentVar | 用于向 JVM 提供附加选项的环境变量。 |
outputDir | 写入脚本的目录。 |
unixStartScriptGenerator | 类似 UNIX 的启动脚本生成器。 |
windowsStartScriptGenerator | Windows 启动脚本生成器。 |
String
applicationName
应用程序的名称。
FileCollection
classpath
应用程序的类路径。
String
executableDir
在发行版中写入脚本的目录。
String
optsEnvironmentVar
用于向 JVM 提供附加选项的环境变量。
File
outputDir
写入脚本的目录。