尝试将 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 compileGroovy
与上面相同的导入步骤:
import static groovyx.gpars.GParsPool.withPool
Gradle输出:
: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
答案 0 :(得分:1)
如果您希望将某些内容导入构建脚本,那么您必须将其作为构建脚本依赖项提供,以便让Gradle知道,在哪里找到它,就像:
buildscript {
repositories {
mavenCentral()
jcenter()
}
dependencies {
classpath group: 'org.codehaus.gpars', name: 'gpars', version: '1.1.0'
}
}
import static groovyx.gpars.GParsPool.withPool
答案 1 :(得分:1)
如果您导航到安装了groovy的位置 - 可能位于$GROOVY_HOME
下并列出您将注意到lib
文件夹的文件夹。列出lib
文件夹的内容显示gpars-1.2.1.jar
存在于那里(groovy v2.4.5)。
当通过 groovysh 或 groovyConsole 启动groovy时,位于lib
文件夹中的所有这些jar文件都会添加到类路径中。
然而,当涉及到gradle并且@Stanislav回答你需要手动将它添加到类路径时,这不会发生。