I have a hierarchical gradle project with following structure
service
-service-core
-build.gradle
-gradle.properties
-service-test-automation
-build.gradle
-gradle.properties
-settings.gradle
service-core/build.gradle looks like following
sourceCompatibility = 1.7 targetCompatibility = 1.7
repositories {
maven {
url ‘abc.com/artifactory/remote-repos’
credentials {
username = “${artifactory_user}”
password = “${artifactory_password}”
}
}
mavenLocal() }
war {
manifest {
attributes(“Implementation-Title”: rootProject.name, “Implementation-Version”: version, ‘Build-Time-ISO-8601’: new Date().format(“yyyy-MM-dd’T’HH:mm:ssZ”))
}
}
dependencies {
compile ‘org.glassfish.jersey.ext:jersey-spring3:2.3.1’
compile ‘org.glassfish.jersey.media:jersey-media-json-jackson:2.2’
compile ‘org.glassfish.jersey.ext:jersey-bean-validation:2.2’
compile ‘ch.qos.logback:logback-classic:1.0.13’
compile ‘ch.qos.logback:logback-access:1.0.13’
compile ‘commons-configuration:commons-configuration:1.9’
compile ‘commons-lang:commons-lang:2.6’
compile ‘abc.lib:abc-lib-monitoring:0.1-2013-10-14_21-32-35’
compile ‘abc.lib:abc-lib-couchbase:1.0-2013-11-08_20-27-32’
testCompile “junit:junit-dep:4.11”
testCompile “org.mockito:mockito-core:1.9.5”
providedCompile ‘javax.servlet:javax.servlet-api:3.1.0’ }
task wrapper(type: Wrapper) {
gradleVersion = ‘1.7’ }
apply plugin: ‘checkstyle’ checkstyle {
ignoreFailures = false
configFile = rootProject.file(‘codequality/checkstyle.xml’) }
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath “net.saliman:gradle-cobertura-plugin:2.0.0”
} } apply plugin: ‘cobertura’ cobertura {
coverageFormats = [‘xml’,‘html’] }
// Publish to artifactory buildscript {
repositories {
maven {
url ‘http://abc.com/artifactory/plugins-release’
credentials {
username = “${artifactory_user}”
password = “${artifactory_password}”
}
}
}
dependencies {
classpath(group: ‘org.jfrog.buildinfo’, name: ‘build-info-extractor-gradle’, version: ‘2.0.9’)
} }
allprojects {
apply plugin: ‘artifactory’ }
artifactory {
contextUrl = “${artifactory_contextUrl}”
//The base Artifactory URL if not overridden by the publisher/resolver
publish {
contextUrl = “${artifactory_contextUrl}”
repository {
repoKey = ‘libs-release-local’
username = “${artifactory_user}”
password = “${artifactory_password}”
maven = true
}
}
resolve {
repository {
repoKey = ‘libs-release’
username = “${artifactory_user}”
password = “${artifactory_password}”
maven = true
}
} }
task copyConfigs(type:Copy) {
from (‘src/main/conf’) {
include ‘**/service-registry*.properties’
}
into ‘/opt/abc/config’ }
build.dependsOn copyConfigs
also specified artifactory_contextUrl in both gradle.properties
but gets following error
org.gradle.listener.ListenerNotificationException: Failed to notify build listener.
at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:90)
at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:30)
at org.gradle.messaging.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
at com.sun.proxy.$Proxy15.projectsEvaluated(Unknown Source)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:145)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:113)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:81)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:64)
at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:33)
at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:35)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:50)
at org.gradle.api.internal.Actions$RunnableActionAdapter.execute(Actions.java:171)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:201)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:174)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:170)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:139)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
at org.gradle.launcher.Main.doAction(Main.java:46)
at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
at org.gradle.launcher.Main.main(Main.java:37)
at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:50)
at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:32)
at org.gradle.launcher.GradleMain.main(GradleMain.java:23) Caused by: org.gradle.listener.ListenerNotificationException: Failed to notify build listener.
at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:90)
at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:30)
at org.gradle.messaging.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
at com.sun.proxy.$Proxy15.projectsEvaluated(Unknown Source)
at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:81)
… 25 more Caused by: org.gradle.listener.ListenerNotificationException: Failed to notify build listener.
at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:90)
at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:30)
at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:81)
… 31 more Caused by: java.lang.IllegalStateException: Context URL cannot be empty
at org.jfrog.build.client.ArtifactoryClientConfiguration.getContextUrl(ArtifactoryClientConfiguration.java:111)
at org.jfrog.build.client.ArtifactoryClientConfiguration$ResolverHandler.getContextUrl(ArtifactoryClientConfiguration.java:184)
at org.jfrog.build.client.ArtifactoryClientConfiguration$RepositoryConfiguration.getUrl(ArtifactoryClientConfiguration.java:395)
at org.jfrog.build.client.ArtifactoryClientConfiguration$RepositoryConfiguration$getUrl.call(Unknown Source)
at org.jfrog.gradle.plugin.artifactory.ArtifactoryPlugin$ProjectsEvaluatedBuildListener.defineResolvers(ArtifactoryPlugin.groovy:84)
at org.jfrog.gradle.plugin.artifactory.ArtifactoryPlugin$ProjectsEvaluatedBuildListener.this$3$defineResolvers(ArtifactoryPlugin.groovy)
at org.jfrog.gradle.plugin.artifactory.ArtifactoryPlugin$_ProjectsEvaluatedBuildListener_projectsEvaluated_closure1.doCall(ArtifactoryPlugin.groovy:75)
at org.jfrog.gradle.plugin.artifactory.ArtifactoryPlugin$ProjectsEvaluatedBuildListener.projectsEvaluated(ArtifactoryPlugin.groovy:73)
at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:81)
… 33 more