Hello everybody, I just began to use Gradle and started with a very simple eclipse project. I need to use a couple of libraries, but when I run gradle build I gor the following errors:
error: package org.springframework.aop does not exist
error: package org.apache.log4j does not exist
here is my build.gradle file:
apply plugin: "java"
apply plugin: "maven"
apply plugin: 'eclipse'
group = "myorg"
version = 1.0
repositories {
mavenCentral()
}
sourceSets.all { set ->
def jarTask = task("${set.name}Jar", type: Jar) {
baseName = baseName + "-$set.name"
from set.output
}
artifacts {
archives jarTask
}
}
sourceSets {
api
impl
}
dependencies {
apiCompile 'commons-codec:commons-codec:1.5'
implCompile sourceSets.api.output
implCompile 'commons-lang:commons-lang:2.6'
testCompile 'junit:junit:4.9'
testCompile sourceSets.api.output
testCompile sourceSets.impl.output
runtime configurations.apiRuntime
runtime configurations.implRuntime
compile("org.springframework:spring-aop:4.1.1.RELEASE")
compile('log4j:log4j:1.2.17')
}
jar {
from sourceSets.api.output
from sourceSets.impl.output
}
uploadArchives {
repositories {
mavenDeployer {
repository(url: uri("${buildDir}/repo"))
addFilter("main") { artifact, file -> artifact.name == project.name }
["api", "impl"].each { type ->
addFilter(type) { artifact, file -> artifact.name.endsWith("-$type") }
// We now have to map our configurations to the correct maven scope for each pom
["compile", "runtime"].each { scope ->
configuration = configurations[type + scope.capitalize()]
["main", type].each { pomName ->
pom(pomName).scopeMappings.addMapping 1, configuration, scope
}
}
}
}
}
}
then in a java class I use:
import org.springframework.aop.*;
import org.apache.log4j.*
which generate the error. Please note that building in eclipse works fine. Any suggestion?