2012-07-19 11 views
6

Estoy usando Gradle para acceder al Artifactory. Artifactory tiene las dependencias particulares, pero de alguna manera gradle no puede enviar ninguna solicitud a Artifactory. Incluso traté de limpiar el caché y ejecutar el comando gradle build para recuperar el archivo. Pero no tuve ningún éxito. El archivo gradle.build es el siguiente.El script de Gradle no puede resolver el artefacto

buildscript { 
    repositories { 
     maven { url 'http://repo.jfrog.org/artifactory/gradle-plugins' } 
    } 
    dependencies { 
     classpath(group: 'org.jfrog.buildinfo', name: 'build-info-extractor-gradle', version: '2.0.12') 
    } 
} 

apply plugin: 'maven' 
apply plugin: 'artifactory' 
apply plugin: 'java' 

repositories { 
    maven { 
     url 'http://artifactory/repo' 
    } 
} 

group = 'com.locationlabs' 
version = '1.1' 

artifacts { 
    archives file("${project.name}-${project.version}-jstest.txt") 

} 

artifactory { 
    contextUrl = 'http://artifactory' 
    publish { 
     repository { 
      repoKey = 'autotest' 
      username = 'rakesh.kumar' 
      password = 'password' 
     } 
     defaults { 
      publishBuildInfo = true 
      publishArtifacts = true 
      publishPom = true 
      publishIvy = false 
     } 
    } 
} 

artifactoryPublish { 
    publishConfigs('archives') 
} 

dependencies { 
    compile group: 'com.locationlabs', name: 'gradletest', version: '1.0', classifier: 'jstest', ext: 'txt' 
} 

Cada vez que ejecute el script Gradle falla con la siguiente excepción y StackTrace.

[email protected]:~/automation/gradletest$ gradle build --stacktrace 
:compileJava 

FAILURE: Build failed with an exception. 

* What went wrong: 
Could not resolve all dependencies for configuration ':compile'. 
> java.lang.NullPointerException (no error message) 

* Try: 
Run with --info or --debug option to get more log output. 

* Exception is: 
org.gradle.api.artifacts.ResolveException: Could not resolve all dependencies for configuration ':compile'. 
    at org.gradle.api.internal.artifacts.ivyservice.ErrorHandlingArtifactDependencyResolver.wrapException(ErrorHandlingArtifactDependencyResolver.java:47) 
    at org.gradle.api.internal.artifacts.ivyservice.ErrorHandlingArtifactDependencyResolver.access$000(ErrorHandlingArtifactDependencyResolver.java:26) 
    at org.gradle.api.internal.artifacts.ivyservice.ErrorHandlingArtifactDependencyResolver$BrokenResolvedConfiguration.rethrowFailure(ErrorHandlingArtifactDependencyResolver.java:127) 
    at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationFileCollection.getFiles(DefaultConfiguration.java:458) 
    at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.getFiles(DefaultConfiguration.java:203) 
    at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration_Decorated.getFiles(Unknown Source) 
    at org.gradle.api.internal.file.collections.DefaultFileCollectionResolveContext$FileTreeConverter.convertInto(DefaultFileCollectionResolveContext.java:191) 
    at org.gradle.api.internal.file.collections.DefaultFileCollectionResolveContext.doResolve(DefaultFileCollectionResolveContext.java:103) 
    at org.gradle.api.internal.file.collections.DefaultFileCollectionResolveContext.resolveAsFileTrees(DefaultFileCollectionResolveContext.java:75) 
    at org.gradle.api.internal.file.collections.DefaultFileCollectionResolveContext$FileTreeConverter.convertInto(DefaultFileCollectionResolveContext.java:182) 
    at org.gradle.api.internal.file.collections.DefaultFileCollectionResolveContext.doResolve(DefaultFileCollectionResolveContext.java:98) 
    at org.gradle.api.internal.file.collections.DefaultFileCollectionResolveContext.resolveAsFileTrees(DefaultFileCollectionResolveContext.java:75) 
    at org.gradle.api.internal.file.CompositeFileCollection$1.resolve(CompositeFileCollection.java:88) 
    at org.gradle.api.internal.file.CompositeFileCollection.getSourceCollections(CompositeFileCollection.java:143) 
    at org.gradle.api.internal.file.CompositeFileTree.getSourceCollections(CompositeFileTree.java:30) 
    at org.gradle.api.internal.file.CompositeFileCollection.getFiles(CompositeFileCollection.java:38) 
    at org.gradle.api.internal.file.AbstractFileCollection.iterator(AbstractFileCollection.java:60) 
    at org.gradle.api.internal.changedetection.DefaultFileSnapshotter.snapshot(DefaultFileSnapshotter.java:42) 
    at org.gradle.api.internal.changedetection.InputFilesChangedUpToDateRule.create(InputFilesChangedUpToDateRule.java:35) 
    at org.gradle.api.internal.changedetection.CompositeUpToDateRule.create(CompositeUpToDateRule.java:35) 
    at org.gradle.api.internal.changedetection.DefaultTaskArtifactStateRepository$HistoricExecution.calcCurrentState(DefaultTaskArtifactStateRepository.java:80) 
    at org.gradle.api.internal.changedetection.DefaultTaskArtifactStateRepository$HistoricExecution.isUpToDate(DefaultTaskArtifactStateRepository.java:88) 
    at org.gradle.api.internal.changedetection.DefaultTaskArtifactStateRepository$TaskArtifactStateImpl.isUpToDate(DefaultTaskArtifactStateRepository.java:128) 
    at org.gradle.api.internal.changedetection.ShortCircuitTaskArtifactStateRepository$ShortCircuitArtifactState.isUpToDate(ShortCircuitTaskArtifactStateRepository.java:77) 
    at org.gradle.api.internal.changedetection.FileCacheBroadcastTaskArtifactStateRepository$1.isUpToDate(FileCacheBroadcastTaskArtifactStateRepository.java:37) 
    at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:44) 
    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:57) 
    at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:41) 
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:51) 
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:52) 
    at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:42) 
    at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:247) 
    at org.gradle.execution.DefaultTaskGraphExecuter.executeTask(DefaultTaskGraphExecuter.java:192) 
    at org.gradle.execution.DefaultTaskGraphExecuter.doExecute(DefaultTaskGraphExecuter.java:177) 
    at org.gradle.execution.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:83) 
    at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:36) 
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61) 
    at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23) 
    at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67) 
    at org.gradle.api.internal.changedetection.TaskCacheLockHandlingBuildExecuter$1.run(TaskCacheLockHandlingBuildExecuter.java:31) 
    at org.gradle.cache.internal.DefaultCacheAccess$1.create(DefaultCacheAccess.java:111) 
    at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:126) 
    at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:109) 
    at org.gradle.cache.internal.DefaultPersistentDirectoryStore.useCache(DefaultPersistentDirectoryStore.java:103) 
    at org.gradle.api.internal.changedetection.DefaultTaskArtifactStateCacheAccess.useCache(DefaultTaskArtifactStateCacheAccess.java:79) 
    at org.gradle.api.internal.changedetection.TaskCacheLockHandlingBuildExecuter.execute(TaskCacheLockHandlingBuildExecuter.java:29) 
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61) 
    at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23) 
    at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67) 
    at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32) 
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61) 
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:54) 
    at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:155) 
    at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:110) 
    at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:78) 
    at org.gradle.launcher.cli.RunBuildAction.execute(RunBuildAction.java:42) 
    at org.gradle.launcher.cli.RunBuildAction.execute(RunBuildAction.java:28) 
    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.exec.ExceptionReportingAction.execute(ExceptionReportingAction.java:31) 
    at org.gradle.launcher.exec.ExceptionReportingAction.execute(ExceptionReportingAction.java:20) 
    at org.gradle.launcher.Main.doAction(Main.java:48) 
    at org.gradle.launcher.exec.EntryPoint.run(EntryPoint.java:45) 
    at org.gradle.launcher.Main.main(Main.java:39) 
    at org.gradle.launcher.ProcessBootstrap.runNoExit(ProcessBootstrap.java:50) 
    at org.gradle.launcher.ProcessBootstrap.run(ProcessBootstrap.java:32) 
    at org.gradle.launcher.GradleMain.main(GradleMain.java:24) 
Caused by: java.lang.NullPointerException 
    at org.gradle.api.internal.artifacts.ivyservice.resolveengine.DependencyGraphBuilder$ConfigurationNode.getArtifacts(DependencyGraphBuilder.java:651) 
    at org.gradle.api.internal.artifacts.ivyservice.resolveengine.DependencyGraphBuilder$DependencyEdge.attachToParents(DependencyGraphBuilder.java:356) 
    at org.gradle.api.internal.artifacts.ivyservice.resolveengine.DependencyGraphBuilder$ConfigurationNode.attachToParents(DependencyGraphBuilder.java:764) 
    at org.gradle.api.internal.artifacts.ivyservice.resolveengine.DependencyGraphBuilder.assembleResult(DependencyGraphBuilder.java:140) 
    at org.gradle.api.internal.artifacts.ivyservice.resolveengine.DependencyGraphBuilder.resolve(DependencyGraphBuilder.java:56) 
    at org.gradle.api.internal.artifacts.ivyservice.resolveengine.DefaultDependencyResolver.resolve(DefaultDependencyResolver.java:67) 
    at org.gradle.api.internal.artifacts.ivyservice.CacheLockingArtifactDependencyResolver$1.create(CacheLockingArtifactDependencyResolver.java:36) 
    at org.gradle.api.internal.artifacts.ivyservice.CacheLockingArtifactDependencyResolver$1.create(CacheLockingArtifactDependencyResolver.java:34) 
    at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:126) 
    at org.gradle.cache.internal.DefaultPersistentDirectoryStore.useCache(DefaultPersistentDirectoryStore.java:99) 
    at org.gradle.api.internal.artifacts.ivyservice.DefaultCacheLockingManager.useCache(DefaultCacheLockingManager.java:49) 
    at org.gradle.api.internal.artifacts.ivyservice.CacheLockingArtifactDependencyResolver.resolve(CacheLockingArtifactDependencyResolver.java:34) 
    at org.gradle.api.internal.artifacts.ivyservice.SelfResolvingDependencyResolver.resolve(SelfResolvingDependencyResolver.java:42) 
    at org.gradle.api.internal.artifacts.ivyservice.ShortcircuitEmptyConfigsArtifactDependencyResolver.resolve(ShortcircuitEmptyConfigsArtifactDependencyResolver.java:78) 
    at org.gradle.api.internal.artifacts.ivyservice.ErrorHandlingArtifactDependencyResolver.resolve(ErrorHandlingArtifactDependencyResolver.java:36) 
    at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.getResolvedConfiguration(DefaultConfiguration.java:236) 
    at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration_Decorated.getResolvedConfiguration(Unknown Source) 
    at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationFileCollection.getFiles(DefaultConfiguration.java:456) 
    ... 65 more 


BUILD FAILED 

Una cosa muy extraña es que el mismo archivo script funciona en la otra máquina, pero no trabajar en la mina a pesar de que la otra máquina tiene la misma configuración e instalación.

Intenté buscar en Internet pero no pude obtener ayuda. Cualquier tipo de ayuda es muy apreciada aquí.

+0

¿Está seguro de que se usa la misma versión de Gradle en ambas máquinas? La forma preferida de hacer cumplir esto es usar el [Gradle Wrapper] (http://gradle.org/docs/current/userguide/gradle_wrapper.html). –

+0

Ambas máquinas tienen la misma versión de gradle. – Rakesh

+0

Al fallar, ¿alguna solicitud de Gradle llegar a Artifactory? ¿Cómo se ven estas solicitudes? – noamt

Respuesta

4

He visto el mismo NPE ayer después de que intenté cambiar el nombre de mi proyecto dentro de gradle.settings (rootProject.name = 'something'). Cuando elimino esta línea de gradle.settings, la excepción desaparece.

Después de algunas investigaciones y con la ayuda de http://forums.gradle.org/gradle/topics/how_to_get_the_latest_integration_version_number finalmente descubrí que la razón es una especie de dependencia circular, cuando mi proyecto dependía de algún módulo que depende de forma transitiva de nuevo en un módulo con el mismo nombre del grupo y del proyecto como "Proyecto actual.

¿Podría ser este tu caso? ¿Cómo se llama tu proyecto? ¿Y cuáles son las dependencias de gradletest? Por favor, verifique si su módulo referenciado gradletest no depende de su proyecto. O bien, si su proyecto en sí se llama gradletest, eso definitivamente explicaría el error.

+0

Sí, en mi caso había una dependencia circular, y el resolutor de Dependencia arrojaba la excepción NullPointer. Ayer descubrí el problema. Tiene sentido que el proyecto no dependa de sí mismo. He sugerido que Gradle muestre conflictos o Error en tal caso. – Rakesh

Cuestiones relacionadas