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
將腳本寫入的目錄。