我有一堆能正常工作的普通脚本。但是,它们始终存在加载整个JVM的“冷启动”问题。我想将gradle作为任务运行(无需将它们定义为任务,这样它们就可以不通过gradle运行),这样我就可以将gradle保持在守护程序模式下,从而保持“热”状态

我当前的项目并没有真正起作用,因为我需要的常规文件不在类路径中。我可以手动加载它,但我怀疑还有更简单的方法(约定?)

这是我的仓库的树状图

$ tree
.
├── build.gradle
├── settings.gradle
└── src
    ├── BBScm.groovy
    ├── Scm.groovy
    ├── StashScm.groovy
    ├── mixins.groovy
    └── stash.groovy

这是我的build.gradle:
plugins {
    id 'groovy'
}

group 'org.bongiorno'
version '1.0-SNAPSHOT'

repositories {
    mavenCentral()
}
configurations {
    groovyScript
}

dependencies {
    compile 'org.codehaus.groovy:groovy-all:2.5.2'
}

task analyze {

    doLast{
        apply from: 'src/stash.groovy'
    }
}

我得到的错误非常清楚:
  script '/Users/cbongiorno/dev/mystuff/stash/src/stash.groovy': 22: unable to resolve class StashScm
   @ line 22, column 13.
     Scm stash = new StashScm(u: srcUser, p: srcPass, baseUrl: 'https://xxxxx')
             ^

需要明确的是:我要问的最简单的方法是什么?因为我绝对可以克服这个问题

最佳答案

src是您放置代码进行编译的地方,也是上一期用来构建 Artifact 的地方,但是如果要添加代码(以源形式),则必须使用buildSrc目录

您可以在https://docs.gradle.org/current/userguide/organizing_gradle_projects.html#sec:build_sources上找到更多文档。

以同样的方式,您可以在depedencies部分中找到项目的依赖项,但是如果您在build逻辑中具有依赖项,则可以使用build部分,在其中使用classpath词代替compile来指定依赖项

关于gradle - 运行groovy脚本的最简单的gradle项目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52614316/

10-12 01:29
查看更多