我如何使用Gradle的CreateStartScripts任务

Wud*_*ong 9 java groovy gradle

我想使用gradle的CreateStartScripts Task来生成启动应用程序的脚本.

我用以下方式使用它:

apply plugin: 'java'
mainClass = 'UIMain';

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
}

task copyResources(type: Copy) {
    from 'config.ini'
    into 'build/dist'
}

task copyLibs(type: Copy) {
    from configurations.default
    from configurations.default.allArtifacts.files
    into 'build/dist/libs'
}

task generateScript(type: CreateStartScripts) {
     applicationName = "Dagang"
     mainClassName = mainClass
     outputDir = "build/dist/"
     classpath = ""
}

task distribute(dependsOn: [
    build,
    copyLibs,
    copyResources,
    generateScript
    ]) <<{ 

description = 'Copies all the project libs to the distribution place.' 
}
Run Code Online (Sandbox Code Playgroud)

但是,当我运行构建时,它会遇到如下错误:

评估根项目'dagang'时出现问题.[org.gradle.BuildExceptionReporter]原因:在根项目'dagang'上找不到属性'CreateStartScripts'.

任何人都可以给我一些光明吗?谢谢.

rod*_*ion 5

CreateStartScripts似乎是一个包私有类,因此它是不可见的。

尝试使用应用程序插件。然后,您还可以覆盖内置startScripts任务的一些其他属性。


Pet*_*ser 5

要么导入类 ( org.gradle.api.tasks.application.CreateStartScripts),要么使用application插件。后者通常是优选的。