Problemy z Gradle

0

Cześć wszystkim,

Aktualnie uczę się Gradle i mam pewien problem.
Stworzyłem projekt w gradle, ale niestety otrzymuję cały czas błąd:

  • What went wrong:
    Execution failed for task ':test'.

    java.io.IOException: Permission denied

Na oko wygląda, jak by gradle nie mógł nic zrobić z folderem 'target', ale przyznam szczerze, że nie wiem o co chodzi.
Gdy próboję odpalać gradle jako SU, problem znika, ale z kolei testy mi sie sypią (używam selenium z chrome).

Używam ubuntu 16.04
Gradle 4.0.1 instalowany manualnie

0

Uruchom z parametrami --stacktrace, w ostateczności --debug.

1

Na oko to utworzyłeś projekt w jakiejś dziwnej lokalizacji gdzie twój user nie ma praw. Zrób tam jakies chown, chmod -R albo utwórz nowy katalog do którego masz prawa

0

--stacktrace i --debug właśnie pokazują mi to, że jest problem z folderem target

Próbowałem już chmod 777 -R folder_projektu
Folder założyłem w katalogu ~/Project/folder_projektu

Mam zazwyczaj taki komunikat:

Unable to delete file: /home/user_x/Projects/learn-serenity/build/test-results/test/binary/output.bin.idx

Zanalzłem też coś takeigo: https://discuss.gradle.org/t/[...]emon-prevents-a-clean/2473/14
ale robienie gradle --stop w kółko to nie jest rozwiązanie

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':test'.
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:100)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
        at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64)
        at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
        at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
        at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
        at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
        at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
        at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:242)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:317)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:309)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:185)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:95)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:235)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:224)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:121)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:77)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:102)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:96)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:612)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:567)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:96)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
        at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:46)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
Caused by: org.gradle.api.file.UnableToDeleteFileException: Unable to delete file: /home/user_x/Projects/learn-serenity/build/test-results/test/binary/output.bin.idx
        at org.gradle.api.internal.file.delete.Deleter.handleFailedDelete(Deleter.java:109)
        at org.gradle.api.internal.file.delete.Deleter.doDeleteInternal(Deleter.java:86)
        at org.gradle.api.internal.file.delete.Deleter.doDeleteInternal(Deleter.java:81)
        at org.gradle.api.internal.file.delete.Deleter.delete(Deleter.java:66)
        at org.gradle.api.internal.file.delete.Deleter.delete(Deleter.java:47)
        at org.gradle.api.internal.file.DefaultFileOperations.delete(DefaultFileOperations.java:143)
        at org.gradle.api.internal.project.DefaultProject.delete(DefaultProject.java:913)
        at org.gradle.api.tasks.testing.Test.executeTests(Test.java:630)
        at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
        at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.doExecute(DefaultTaskClassInfoStore.java:141)
        at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
        at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:121)
        at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:711)
        at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:694)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:122)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:317)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:309)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:185)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:95)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:111)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
        ... 27 more
0

Aby było śmieszniej, jak odpalam komendy gradle z sudo, to wszystko śmiga ;)

1

No to może jakiś zaawansowany bug. Ale może być też tak, że masz plik utworzony jako root i trzeba go tylko raz usunąć. Wtedy sudo gradle clean powinno rozwiązać sprawę. Za kolejnym razem plik będzie już tworzył użytkownik.

0
jarekczek napisał(a):

No to może jakiś zaawansowany bug. Ale może być też tak, że masz plik utworzony jako root i trzeba go tylko raz usunąć. Wtedy sudo gradle clean powinno rozwiązać sprawę. Za kolejnym razem plik będzie już tworzył użytkownik.

Jarekczek - powinieneś dostać oskara.
Zadziałało. A siedziałem nad tym od wczorajszej nocy.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0