3

尝试将gpars withPool 方法导入我的项目。导入在groovyconsole中有效,但在 gradle 中构建时无效。

groovyconsole和gradle都在运行 groovy 版本 2.4.5

有任何想法吗?

Groovy 控制台

import static groovyx.gpars.GParsPool.withPool
withPool(2) { (1..5).collectParallel { println it.toString() } }

输出:

1
3
2
4
5
Result: [null, null, null, null, null]

Gradle 编译Groovy

与上述相同的导入步骤:

import static groovyx.gpars.GParsPool.withPool

梯度输出:

:compileGroovystartup failed:
C:\Programming\Projects\groovy\src\main\groovy\lib.groovy: 18: unable to resolve class groovyx.gpars.GParsPool
 @ line 18, column 1.
   import static groovyx.gpars.GParsPool.withPool
   ^

1 error

 FAILED
4

2 回答 2

1

如果您希望将某些内容导入构建脚本,则必须将其作为构建脚本依赖项提供,以便让 Gradle 知道在哪里可以找到它,就像:

buildscript {    
    repositories {
        mavenCentral()
        jcenter()
    }

    dependencies {
        classpath group: 'org.codehaus.gpars', name: 'gpars', version: '1.1.0'
    }
}

import static groovyx.gpars.GParsPool.withPool
于 2016-01-12T16:08:29.827 回答
1

如果您导航到安装 groovy 的位置 - 可能位于$GROOVY_HOME并列出您会注意到该文件夹​​的lib文件夹。列出lib文件夹的内容显示gpars-1.2.1.jar那里存在(groovy v2.4.5)。

当通过groovyshgroovyConsole启动 groovy 时,文件夹中的所有这些 jar 文件lib都会添加到类路径中。

但是,当涉及到 gradle 时不会发生这种情况,正如@Stanislav 回答的那样,您需要手动将其添加到类路径中。

于 2016-01-13T07:12:28.450 回答