Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Avoid making external JVM call for builds #18

Open
mperry opened this issue Sep 15, 2015 · 5 comments
Open

Avoid making external JVM call for builds #18

mperry opened this issue Sep 15, 2015 · 5 comments

Comments

@mperry
Copy link
Contributor

mperry commented Sep 15, 2015

This is particularly slow for multi-module builds.

@mperry
Copy link
Contributor Author

mperry commented Sep 16, 2015

Hi @Dierk and @Ingo60. I made some progress in the internal-compilation branch towards not spawning a new JVM for each compilation. Now when I run the gradlew build for my Frege example project, https://github.com/mperry/frege-gradle-example, I get a java.util.concurrent.RejectedExecutionException. Any ideas? See below for the stacktrace.

The plugin is now calling the Frege classes directly. To do this I had to duplicate the frege.compiler.Main.main method so there was no System.exit() call. I placed the contents of this method inside the plugin to perform compilation.

I would guess it is using all the threads in a thread pool, but not releasing the thread somehow.

Calling Frege compiler with args: '[-inline, -make, -v, -sp, E:\repositories\frege-gradle-example\frege-java\src\main\frege, -d, E:\repositories\frege-gradle-example\frege-java\build\classes\main, -fp, C:\Users\maperry\.gradle\caches\modules-2\files-2.1\org.frege-lang\frege\3.22.367-g2737683\51cecdc8ad389575d0d3bb80917ec420c9d31af9\frege-3.22.367-g2737683.jar;C:\Users\maperry\.m2\repository\org\functionaljava\functionaljava\4.4\functionaljava-4.4.jar, E:\repositories\frege-gr
adle-example\frege-java\src\main\frege]'
:frege-java:compileFrege FAILED
:frege-java:compileFrege (Thread[Daemon worker Thread 3,5,main]) completed. Took
 0.007 secs.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':frege-java:compileFrege'.
> Task java.util.concurrent.FutureTask@5913b1de rejected from java.util.concurre
nt.ThreadPoolExecutor@2441d7f7[Terminated, pool size = 0, active threads = 0, qu
eued tasks = 0, completed tasks = 14]

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

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':frege-j
ava:compileFrege'.
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.ex
ecuteActions(ExecuteActionsTaskExecuter.java:69)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.ex
ecute(ExecuteActionsTaskExecuter.java:46)
        at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExec
uter.execute(PostExecutionAnalysisTaskExecuter.java:35)
        at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.exec
ute(SkipUpToDateTaskExecuter.java:64)
        at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execut
e(ValidatingTaskExecuter.java:58)
        at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecu
ter.execute(SkipEmptySourceFilesTaskExecuter.java:42)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter
.execute(SkipTaskWithNoActionsExecuter.java:52)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execut
e(SkipOnlyIfTaskExecuter.java:53)
        at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter
.execute(ExecuteAtMostOnceTaskExecuter.java:43)
        at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailur
e(AbstractTask.java:310)
        at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorW
orker.executeTask(AbstractTaskPlanExecutor.java:79)
        at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorW
orker.processTask(AbstractTaskPlanExecutor.java:63)
        at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorW
orker.run(AbstractTaskPlanExecutor.java:51)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(Defaul
tTaskPlanExecutor.java:23)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(Defau
ltTaskGraphExecuter.java:88)
        at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTask
ExecutionAction.java:37)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecute
r.java:62)
        at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExec
uter.java:23)
        at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecu
ter.java:68)
        at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildEx
ecutionAction.java:32)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecute
r.java:62)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecute
r.java:55)
        at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(Default
GradleLauncher.java:149)
        at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradle
Launcher.java:106)
        at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLaun
cher.java:86)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildCon
troller.run(InProcessBuildActionExecuter.java:90)
        at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(Exe
cuteBuildActionRunner.java:28)
        at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildA
ctionRunner.java:35)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProce
ssBuildActionExecuter.java:41)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProce
ssBuildActionExecuter.java:28)
        at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBu
ild.java:49)
        at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(Build
CommandOnly.java:36)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(
WatchForDisconnection.java:37)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute
(ResetDeprecationLogger.java:26)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.
execute(RequestStopIfSingleUsedDaemon.java:34)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(Forw
ardClientInput.java:74)
        at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(Forw
ardClientInput.java:72)
        at org.gradle.util.Swapper.swap(Swapper.java:38)
        at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(For
wardClientInput.java:72)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(
DaemonHealthTracker.java:47)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClien
t.java:66)
        at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(Build
CommandOnly.java:36)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBu
ild(EstablishBuildEnvironment.java:71)
        at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(Build
CommandOnly.java:36)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(Hin
tGCAfterBuild.java:41)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.
run(StartBuildOrRespondWithBusy.java:50)
        at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(Daemon
StateCoordinator.java:246)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.
onExecute(ExecutorPolicy.java:54)
        at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableE
xecutorImpl.java:40)
Caused by: java.util.concurrent.RejectedExecutionException: Task java.util.concu
rrent.FutureTask@5913b1de rejected from java.util.concurrent.ThreadPoolExecutor@
2441d7f7[Terminated, pool size = 0, active threads = 0, queued tasks = 0, comple
ted tasks = 14]
        at frege.java.util.Concurrent$TExecutorService$5.eval(Concurrent.java:58
4)
        at frege.java.util.Concurrent$TExecutorService$5.eval(Concurrent.java:58
1)
        at frege.runtime.Fun1$1.eval(Fun1.java:63)
        at frege.runtime.Delayed.call(Delayed.java:200)
        at frege.runtime.Delayed.forced(Delayed.java:257)
        at frege.compiler.Main$1Fasync_25586$1$1$2.eval(Main.java:6133)
        at frege.compiler.Main$1Fasync_25586$1$1$2.eval(Main.java:6130)
        at frege.runtime.Fun1$1.eval(Fun1.java:63)
        at frege.runtime.Delayed.call(Delayed.java:198)
        at frege.runtime.Delayed.forced(Delayed.java:267)
        at frege.compiler.Main$1Fasync_25586$1$1.eval(Main.java:6155)
        at frege.compiler.Main$1Fasync_25586$1$1.eval(Main.java:6083)
        at frege.runtime.Fun1$1.eval(Fun1.java:63)
        at frege.runtime.Delayed.call(Delayed.java:200)
        at frege.runtime.Delayed.forced(Delayed.java:257)
        at frege.prelude.PreludeBase$TST$1.eval(PreludeBase.java:13919)
        at frege.runtime.Fun1$1.eval(Fun1.java:63)
        at frege.runtime.Delayed.call(Delayed.java:200)
        at frege.runtime.Delayed.forced(Delayed.java:267)
        at frege.compiler.Main$41$2.eval(Main.java:6458)
        at frege.compiler.Main$41$2.eval(Main.java:6455)
        at frege.runtime.Fun1$1.eval(Fun1.java:63)
        at frege.runtime.Delayed.call(Delayed.java:198)
        at frege.runtime.Delayed.forced(Delayed.java:267)
        at frege.compiler.Main$43$2.eval(Main.java:7076)
        at frege.compiler.Main$43$2.eval(Main.java:6988)
        at frege.runtime.Fun1$1.eval(Fun1.java:63)
        at frege.runtime.Delayed.call(Delayed.java:198)
        at frege.runtime.Delayed.forced(Delayed.java:267)
        at frege.compiler.Main$44.eval(Main.java:7193)
        at frege.runtime.Fun1$1.eval(Fun1.java:63)
        at frege.runtime.Delayed.call(Delayed.java:198)
        at frege.runtime.Runtime.runMain(Runtime.java:273)
        at frege.runtime.Runtime$runMain.call(Unknown Source)
        at frege.gradle.CompileTask.compile(CompileTask.groovy:135)
        at frege.gradle.CompileTask$compile$6.callCurrent(Unknown Source)
        at frege.gradle.CompileTask.executeCompile(CompileTask.groovy:124)
        at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75)
        at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskF
actory$StandardTaskAction.doExecute(AnnotationProcessingTaskFactory.java:226)
        at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskF
actory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:219)
        at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskF
actory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:208)
        at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(Abstra
ctTask.java:589)
        at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(Abstra
ctTask.java:572)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.ex
ecuteAction(ExecuteActionsTaskExecuter.java:80)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.ex
ecuteActions(ExecuteActionsTaskExecuter.java:61)
        ... 57 more


BUILD FAILED

Total time: 1.353 secs
Stopped 0 compiler daemon(s).
Received result CommandFailure[value=org.gradle.launcher.exec.ReportedException:
 org.gradle.internal.exceptions.LocationAwareException: Execution failed for tas
k ':frege-java:compileFrege'.] from daemon DaemonInfo{pid=10924, address=[14d56d
b2-b08b-413a-a5af-dbcc29f8ec33 port:55398, addresses:[/127.0.0.1, /0:0:0:0:0:0:0
:1]], idle=true, context=DefaultDaemonContext[uid=a6d76149-190a-4ae6-8ab7-5dafcf
3fb023,javaHome=C:\Program Files\Java\jdk1.7.0_79,daemonRegistryDir=C:\Users\map
erry\.gradle\daemon,pid=10924,idleTimeout=10800000,daemonOpts=-XX:MaxPermSize=25
6m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx1024m,-Dfile.encoding=windows-1252,-Duser
.country=AU,-Duser.language=en,-Duser.variant]}.

E:\repositories\frege-gradle-example>

@Dierk
Copy link
Member

Dierk commented Sep 16, 2015

if I'm not mistaken, the changes in the SourceSet branch will also avoid spawning a new process...

Dierk

sent from:mobile

Am 16.09.2015 um 08:11 schrieb Mark Perry [email protected]:

Hi @Dierk. I made some progress in the internal-compilation branch towards not spawning a new JVM for each compilation. Now when I run the gradlew build for my Frege example project, https://github.com/mperry/frege-gradle-example, I get a java.util.concurrent.RejectedExecutionException. Any ideas? See below for the stacktrace.

Calling Frege compiler with args: '[-inline, -make, -v, -sp, E:\repositories\frege-gradle-example\frege-java\src\main\frege, -d, E:\repositories\frege-gradle-example\frege-java\build\classes\main, -fp, C:\Users\maperry.gradle\caches\modules-2\files-2.1\org.frege-lang\frege\3.22.367-g2737683\51cecdc8ad389575d0d3bb80917ec420c9d31af9\frege-3.22.367-g2737683.jar;C:\Users\maperry.m2\repository\org\functionaljava\functionaljava\4.4\functionaljava-4.4.jar, E:\repositories\frege-gr
adle-example\frege-java\src\main\frege]'
:frege-java:compileFrege FAILED
:frege-java:compileFrege (Thread[Daemon worker Thread 3,5,main]) completed. Took
0.007 secs.

FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':frege-java:compileFrege'.

Task java.util.concurrent.FutureTask@5913b1d rejected from java.util.concurre
nt.ThreadPoolExecutor@2441d7f[Terminated, pool size = 0, active threads = 0, qu
eued tasks = 0, completed tasks = 14]

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

Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':frege-j
ava:compileFrege'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.ex
ecuteActions(ExecuteActionsTaskExecuter.java:69)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.ex
ecute(ExecuteActionsTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExec
uter.execute(PostExecutionAnalysisTaskExecuter.java:35)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.exec
ute(SkipUpToDateTaskExecuter.java:64)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execut
e(ValidatingTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecu
ter.execute(SkipEmptySourceFilesTaskExecuter.java:42)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter
.execute(SkipTaskWithNoActionsExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execut
e(SkipOnlyIfTaskExecuter.java:53)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter
.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailur
e(AbstractTask.java:310)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorW
orker.executeTask(AbstractTaskPlanExecutor.java:79)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorW
orker.processTask(AbstractTaskPlanExecutor.java:63)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorW
orker.run(AbstractTaskPlanExecutor.java:51)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(Defaul
tTaskPlanExecutor.java:23)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(Defau
ltTaskGraphExecuter.java:88)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTask
ExecutionAction.java:37)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecute
r.java:62)
at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExec
uter.java:23)
at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecu
ter.java:68)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildEx
ecutionAction.java:32)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecute
r.java:62)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecute
r.java:55)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(Default
GradleLauncher.java:149)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradle
Launcher.java:106)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLaun
cher.java:86)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildCon
troller.run(InProcessBuildActionExecuter.java:90)
at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(Exe
cuteBuildActionRunner.java:28)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildA
ctionRunner.java:35)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProce
ssBuildActionExecuter.java:41)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProce
ssBuildActionExecuter.java:28)
at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBu
ild.java:49)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(Build
CommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(
WatchForDisconnection.java:37)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute
(ResetDeprecationLogger.java:26)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.
execute(RequestStopIfSingleUsedDaemon.java:34)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(Forw
ardClientInput.java:74)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(Forw
ardClientInput.java:72)
at org.gradle.util.Swapper.swap(Swapper.java:38)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(For
wardClientInput.java:72)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(
DaemonHealthTracker.java:47)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClien
t.java:66)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(Build
CommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBu
ild(EstablishBuildEnvironment.java:71)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(Build
CommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(Hin
tGCAfterBuild.java:41)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(
DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.
run(StartBuildOrRespondWithBusy.java:50)
at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(Daemon
StateCoordinator.java:246)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.
onExecute(ExecutorPolicy.java:54)
at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableE
xecutorImpl.java:40)
Caused by: java.util.concurrent.RejectedExecutionException: Task java.util.concu
rrent.FutureTask@5913b1d rejected from java.util.concurrent.ThreadPoolExecutor@
2441d7f7[Terminated, pool size = 0, active threads = 0, queued tasks = 0, comple
ted tasks = 14]
at frege.java.util.Concurrent$TExecutorService$5.eval(Concurrent.java:58
4)
at frege.java.util.Concurrent$TExecutorService$5.eval(Concurrent.java:58
1)
at frege.runtime.Fun1$1.eval(Fun1.java:63)
at frege.runtime.Delayed.call(Delayed.java:200)
at frege.runtime.Delayed.forced(Delayed.java:257)
at frege.compiler.Main$1Fasync_25586$1$1$2.eval(Main.java:6133)
at frege.compiler.Main$1Fasync_25586$1$1$2.eval(Main.java:6130)
at frege.runtime.Fun1$1.eval(Fun1.java:63)
at frege.runtime.Delayed.call(Delayed.java:198)
at frege.runtime.Delayed.forced(Delayed.java:267)
at frege.compiler.Main$1Fasync_25586$1$1.eval(Main.java:6155)
at frege.compiler.Main$1Fasync_25586$1$1.eval(Main.java:6083)
at frege.runtime.Fun1$1.eval(Fun1.java:63)
at frege.runtime.Delayed.call(Delayed.java:200)
at frege.runtime.Delayed.forced(Delayed.java:257)
at frege.prelude.PreludeBase$TST$1.eval(PreludeBase.java:13919)
at frege.runtime.Fun1$1.eval(Fun1.java:63)
at frege.runtime.Delayed.call(Delayed.java:200)
at frege.runtime.Delayed.forced(Delayed.java:267)
at frege.compiler.Main$41$2.eval(Main.java:6458)
at frege.compiler.Main$41$2.eval(Main.java:6455)
at frege.runtime.Fun1$1.eval(Fun1.java:63)
at frege.runtime.Delayed.call(Delayed.java:198)
at frege.runtime.Delayed.forced(Delayed.java:267)
at frege.compiler.Main$43$2.eval(Main.java:7076)
at frege.compiler.Main$43$2.eval(Main.java:6988)
at frege.runtime.Fun1$1.eval(Fun1.java:63)
at frege.runtime.Delayed.call(Delayed.java:198)
at frege.runtime.Delayed.forced(Delayed.java:267)
at frege.compiler.Main$44.eval(Main.java:7193)
at frege.runtime.Fun1$1.eval(Fun1.java:63)
at frege.runtime.Delayed.call(Delayed.java:198)
at frege.runtime.Runtime.runMain(Runtime.java:273)
at frege.runtime.Runtime$runMain.call(Unknown Source)
at frege.gradle.CompileTask.compile(CompileTask.groovy:135)
at frege.gradle.CompileTask$compile$6.callCurrent(Unknown Source)
at frege.gradle.CompileTask.executeCompile(CompileTask.groovy:124)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskF
actory$StandardTaskAction.doExecute(AnnotationProcessingTaskFactory.java:226)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskF
actory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:219)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskF
actory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:208)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(Abstra
ctTask.java:589)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(Abstra
ctTask.java:572)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.ex
ecuteAction(ExecuteActionsTaskExecuter.java:80)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.ex
ecuteActions(ExecuteActionsTaskExecuter.java:61)
... 57 more

BUILD FAILED

Total time: 1.353 secs
Stopped 0 compiler daemon(s).
Received result CommandFailure[value=org.gradle.launcher.exec.ReportedException:
org.gradle.internal.exceptions.LocationAwareException: Execution failed for tas
k ':frege-java:compileFrege'.] from daemon DaemonInfo{pid=10924, address=[14d56d
b2-b08b-413a-a5af-dbcc29f8ec33 port:55398, addresses:[/127.0.0.1, /0:0:0:0:0:0:0
:1]], idle=true, context=DefaultDaemonContext[uid=a6d76149-190a-4ae6-8ab7-5dafcf
3fb023,javaHome=C:\Program Files\Java\jdk1.7.0_79,daemonRegistryDir=C:\Users\map
erry.gradle\daemon,pid=10924,idleTimeout=10800000,daemonOpts=-XX:MaxPermSize=25
6m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx1024m,-Dfile.encoding=windows-1252,-Duser
.country=AU,-Duser.language=en,-Duser.variant]}.

E:\repositories\frege-gradle-example>


Reply to this email directly or view it on GitHub.

@mperry
Copy link
Contributor Author

mperry commented Sep 16, 2015

I had a quick look at the SourceSet branch and don't see it.

When do you think those changes will be ready?

@Dierk
Copy link
Member

Dierk commented Sep 16, 2015

https://github.com/Frege/frege-gradle-plugin/tree/SourceSet looks ok.

It may work already ...
It needs some testing and fixing anything that comes up (preparation of the Frege day interrupted me in that work). Since I have no idea what will come up, I cannot give any estimates. Till end of week I will be busy at bedcon conference. So feel free to go ahead and give it a try.

The main idea is to follow the golang plugin to become a good citizen in the gradle plugin world. With proper definition of source sets, the IDEs should also pick those up correctly from the gradle build...

@mperry
Copy link
Contributor Author

mperry commented Sep 17, 2015

We should also check the eclipse plugin to see how it is done there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants