Have any of you working on the new cTAKES trunk noticed JCasGen constantly
running? I have Eclipse set to "Build Automatically" and I'm constantly seeing
tasks running in the background in my Progress view that look like:
Compiling ctakes-type-system/target/generated-sources/...
Refreshing ctakes-type-system/target/generated-sources/...
These tasks run, complete and then immediately start again, and as a result, my
Eclipse runs very slowly. Are other people experiencing this too?
I think the solution is to create a real jcasgen-maven-plugin and a proper m2e
connector that only runs JCasGen when the type system has changed (or on
project import, or if target/generated-sources/jcasgen is missing, etc.).
What do you all think? Does this approach sound okay? I have a working plugin
and m2e connector, but I didn't want to just commit the change because if I do,
everyone will have to install the m2e connector in their Eclipse environment.
So I figured we should discuss it first.
Steve
P.S. For anyone was experiencing the same problem, could you try out the
following fix?
(1) Apply the attached patch to cTAKES trunk, which uses the
jcasgen-maven-plugin in the pom.xml files instead of the exec-maven-plugin and
build-helper-maven-plugin:
$ svn patch ctakes-jcasgen-maven-plugin.diff
(2) Open Eclipse, and refresh your cTAKES checkout. You should see a bunch of
errors in the Problems view that look like "Project configuration is not
up-to-date with pom.xml. Run Maven->Update Project or use Quick Fix."
(3) Update the Maven projects as suggested.
(4) You should now see some new errors that look like: "Plugin execution not
covered by lifecycle configuration:
org.cleartk:jcasgen-maven-plugin:0.9.0:generate (execution: default, phase:
generate-sources)"
(5) Install the m2e connector for the jcasgen-maven-plugin. Go to Help ->
Install New Software…, add the update site
http://cleartk.googlecode.com/git/jcasgen-m2e-connector/org.cleartk.plugin.jcasgen.m2e.repo/target/repository/
and install the "m2e connector for JCasGen Maven plugin". Eclipse will restart.
(6) Update the Maven projects again, as in step (3). The errors should all be
gone now.
Some things to try to make sure the fix worked:
(1) Check that JCasGen is no longer be constantly running in the background.
Go to the Progress view and make sure that eventually you see just "No
operations to display at this time."
(2) Modify a few non-type-system files and and make sure (in the Progress view
again) that JCasGen does not run.
(3) Modify a type system, and make sure that JCasGen *does* run. An easy way to
check this is to change an annotation or feature name and make sure you got
some new compile errors.