Uploaded image for project: 'Gradle'
  1. Gradle
  2. GRADLE-3400

Error when attempting to walk file tree including a symlink pointing to non-existent location

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Resolution: Fixed
    • Affects Version/s: 2.9
    • Fix Version/s: 2.12-rc-1

      Description

      This seems to be caused by changes introduced in Gradle 2.9 related to incremental build improvements. The following stacktrace can be reproduced by walking a file tree including a symlink pointing to a non-existent file. This can be either specifying it as an input to a Copy task or by using fileTree().

      org.gradle.api.GradleScriptException: A problem occurred evaluating root project 'reproduction_scenario'.
      	at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:93)
      	at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl$1.run(DefaultScriptPluginFactory.java:144)
      	at org.gradle.configuration.ProjectScriptTarget.addConfiguration(ProjectScriptTarget.java:72)
      	at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:149)
      	at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:38)
      	at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:25)
      	at org.gradle.configuration.project.ConfigureActionsProjectEvaluator.evaluate(ConfigureActionsProjectEvaluator.java:34)
      	at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:55)
      	at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:496)
      	at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:87)
      	at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:42)
      	at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:35)
      	at org.gradle.initialization.DefaultGradleLauncher$2.run(DefaultGradleLauncher.java:125)
      	at org.gradle.internal.Factories$1.create(Factories.java:22)
      	at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
      	at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:52)
      	at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:122)
      	at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32)
      	at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:99)
      	at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:93)
      	at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
      	at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:62)
      	at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:93)
      	at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:82)
      	at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:94)
      	at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
      	at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
      	at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:43)
      	at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:28)
      	at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:77)
      	at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:47)
      	at org.gradle.launcher.exec.DaemonUsageSuggestingBuildActionExecuter.execute(DaemonUsageSuggestingBuildActionExecuter.java:51)
      	at org.gradle.launcher.exec.DaemonUsageSuggestingBuildActionExecuter.execute(DaemonUsageSuggestingBuildActionExecuter.java:28)
      	at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:43)
      	at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.java:170)
      	at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:237)
      	at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:210)
      	at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:35)
      	at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)
      	at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:206)
      	at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:169)
      	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:33)
      	at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
      	at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:54)
      	at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:35)
      	at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
      Caused by: org.gradle.api.GradleException: Could not list contents of '/Users/mark/Downloads/reproduction_scenario/foo/tmpje'. Couldn't follow symbolic link.
      	at org.gradle.api.internal.file.collections.jdk7.Jdk7DirectoryWalker$1.visitFile(Jdk7DirectoryWalker.java:74)
      	at org.gradle.api.internal.file.collections.jdk7.Jdk7DirectoryWalker$1.visitFile(Jdk7DirectoryWalker.java:51)
      	at org.gradle.api.internal.file.collections.jdk7.Jdk7DirectoryWalker.walkDir(Jdk7DirectoryWalker.java:51)
      	at org.gradle.api.internal.file.collections.DirectoryFileTree.walkDir(DirectoryFileTree.java:143)
      	at org.gradle.api.internal.file.collections.DirectoryFileTree.visitFrom(DirectoryFileTree.java:127)
      	at org.gradle.api.internal.file.collections.DirectoryFileTree.visit(DirectoryFileTree.java:117)
      	at org.gradle.api.internal.file.collections.FileTreeAdapter.visit(FileTreeAdapter.java:109)
      	at org.gradle.api.internal.file.AbstractFileTree.getFiles(AbstractFileTree.java:36)
      	at org.gradle.api.internal.file.CompositeFileCollection.getFiles(CompositeFileCollection.java:46)
      	at build_euihnpmciabd8wz5ebe710dna$_run_closure1.doCall(/Users/mark/Downloads/reproduction_scenario/build.gradle:2)
      	at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:67)
      	at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:130)
      	at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:110)
      	at org.gradle.api.internal.AbstractTask.configure(AbstractTask.java:488)
      	at org.gradle.api.internal.project.AbstractProject.task(AbstractProject.java:887)
      	at org.gradle.api.internal.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:235)
      	at org.gradle.api.internal.BeanDynamicObject.invokeMethod(BeanDynamicObject.java:130)
      	at org.gradle.api.internal.CompositeDynamicObject.invokeMethod(CompositeDynamicObject.java:150)
      	at org.gradle.groovy.scripts.BasicScript.methodMissing(BasicScript.java:79)
      	at build_euihnpmciabd8wz5ebe710dna.run(/Users/mark/Downloads/reproduction_scenario/build.gradle:1)
      	at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:91)
      	... 47 more
      

        Attachments

          Activity

            People

            Assignee:
            lhotari Lari Hotari
            Reporter:
            mvieira Mark Vieira (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: