2011-12-19 14 views
6

मैं rootDir नीचे एक तरह एक काम का उपयोग कर फ़ाइल की प्रतिलिपि करने के लिए कोशिश कर रहा हूँ Gradle में rootDir करने के लिए फ़ाइलों ...कॉपी

task copyFilesToProjectRoot(type: Copy) { 
    from (fileTree(dir: *some path*)){ 
     include '*.*' 
    } 
    into('.') 
} 

..लेकिन यह अपवाद हो रही रखने:

org.gradle.api.UncheckedIOException: java.io.IOException: The process cannot access the file because another process has locked a portion of the file 
     at org.gradle.util.HashUtil.createHash(HashUtil.java:65) 
     at org.gradle.api.internal.changedetection.DefaultHasher.hash(DefaultHasher.java:24) 
     at org.gradle.api.internal.changedetection.CachingHasher.hash(CachingHasher.java:44) 
     at org.gradle.api.internal.changedetection.DefaultFileSnapshotter.snapshot(DefaultFileSnapshotter.java:44) 
     at org.gradle.api.internal.changedetection.OutputFilesSnapshotter.snapshot(OutputFilesSnapshotter.java:75) 
     at org.gradle.api.internal.changedetection.OutputFilesChangedUpToDateRule.create(OutputFilesChangedUpToDateRule.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:243) 
     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:70) 
     at org.gradle.execution.DefaultBuildExecuter.access$300(DefaultBuildExecuter.java:23) 
     at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:80) 
     at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32) 
     at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:70) 
     at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:63) 
     at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:157) 
     at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:112) 
     at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:80) 
     at org.gradle.launcher.cli.RunBuildAction.execute(RunBuildAction.java:42) 
     at org.gradle.launcher.cli.RunBuildAction.execute(RunBuildAction.java:28) 
     at org.gradle.launcher.exec.ExceptionReportingAction.execute(ExceptionReportingAction.java:32) 
     at org.gradle.launcher.exec.ExceptionReportingAction.execute(ExceptionReportingAction.java:21) 
     at org.gradle.launcher.cli.CommandLineActionFactory$WithLoggingAction.execute(CommandLineActionFactory.java:233) 
     at org.gradle.launcher.cli.CommandLineActionFactory$WithLoggingAction.execute(CommandLineActionFactory.java:217) 
     at org.gradle.launcher.Main.doAction(Main.java:48) 
     at org.gradle.launcher.exec.EntryPoint$1.execute(EntryPoint.java:53) 
     at org.gradle.launcher.exec.EntryPoint$1.execute(EntryPoint.java:51) 
     at org.gradle.launcher.exec.Execution.execute(Execution.java:28) 
     at org.gradle.launcher.exec.EntryPoint.run(EntryPoint.java:39) 
     at org.gradle.launcher.Main.main(Main.java:39) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
     at java.lang.reflect.Method.invoke(Method.java:597) 
     at org.gradle.launcher.ProcessBootstrap.runNoExit(ProcessBootstrap.java:51) 
     at org.gradle.launcher.ProcessBootstrap.run(ProcessBootstrap.java:33) 
     at org.gradle.launcher.GradleMain.main(GradleMain.java:24) 
Caused by: java.io.IOException: The process cannot access the file because another process has locked a portion of the file 
     at java.io.FileInputStream.readBytes(Native Method) 
     at java.io.FileInputStream.read(FileInputStream.java:177) 
     at org.gradle.util.HashUtil.createHash(HashUtil.java:55) 
     ... 50 more 

इस काम को कैसे करें इस पर कोई विचार?

+0

क्या आप इसे विंडोज़ पर डिमन सक्षम के साथ चलाते हैं? कौन सा ग्रेड संस्करण? –

+0

नवीनतम मील का पत्थर 6. बस इसे विंडोज़ में कमांड लाइन से चला रहा है। – stuff22

उत्तर

6

ऐसा लगता है कि यह काम करता है। यह अंतर्निहित चींटी कार्य का उपयोग कर रहा है।

task copyToRoot(){ 
    doLast{ 
    ant.copy(todir:rootDir) { 
      fileset(dir:*some path*) 
     } 
    } } 
संबंधित मुद्दे