-
Notifications
You must be signed in to change notification settings - Fork 10
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
Comments
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.
|
if I'm not mistaken, the changes in the SourceSet branch will also avoid spawning a new process... Dierk sent from:mobile
|
I had a quick look at the SourceSet branch and don't see it. When do you think those changes will be ready? |
https://github.com/Frege/frege-gradle-plugin/tree/SourceSet looks ok. It may work already ... 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... |
We should also check the eclipse plugin to see how it is done there. |
This is particularly slow for multi-module builds.
The text was updated successfully, but these errors were encountered: