【发布时间】:2015-09-03 11:59:46
【问题描述】:
我在构建 scala 代码时遇到了一个 gradle 问题。
$gradle makeJar
错误:org.gradle.api.tasks.TaskExecutionException:
任务 ':compileScala' 执行失败。
原因:java.lang.NoClassDefFoundError: scala/Function1
$gradle -v
Gradle 版本 - 1.6
groovy - 1.8.6
蚂蚁 - 1.8.4
常春藤 - 2.2.0
jvm - 1.7.0_55
操作系统 - Linux 2.6x
我的 build.gradle 文件在下面 -
sourceCompatibility = '1.6'
apply plugin: 'scala'
def mypath = 'file://'+new File('test/lib').absolutePath
repositories {
flatDir dirs:"${mypath}"
}
configurations{
scalaPackage
}
sourceSets{
main{
scala{
srcDirs = ['test/src/scala']
}
}
}
dependencies {
compile fileTree(dir: mypath, includes: ['*.jar'])
}
task sourcePath{
sourceSets.main.scala.srcDirs = sourceSets.main.scala.srcDirs
sourceSets.main.java.srcDirs = []
}
task makeJar(type: Jar, dependsOn: compileScala){
archivename = "mytest.jar"
destinationDir = file("test/oplib")
from "build/classes"
classpath = configurations.scalaPackage
}
compileScala.dependsOn sourcePath
================================================ ===========
这里,我的 scala 源代码存在于 - ./test/src/scala/test.scala
scala jar 文件存在于 - ./test/lib
预期的输出位置 - ./test/oplib
build.gradle 文件是否有任何问题可能导致此错误。请建议。
非常感谢,普拉莱
【问题讨论】:
标签: java scala ant gradle build.gradle