I just tried a fresh download and install and wasn't able to recreate the odd 
behavior:
I think Steven Wu and Dima was in the process of trying it out as well; perhaps 
we could see what their experience has been as well.

My Alt setup:
Mac OSX 10.7.4
  Eclipse SDK   4.2.1.M20120914-1800    org.eclipse.sdk.ide     null
  m2e - Maven Integration for Eclipse   1.2.0.20120903-1050     
org.eclipse.m2e.feature.feature.group   Eclipse.org - m2e
  m2e connector for build-helper-maven-plugin   0.15.0.201207090124     
org.sonatype.m2e.buildhelper.feature.feature.group      Sonatype, Inc.
  m2e connector for mavenarchiver pom properties        0.15.0.201207090125     
org.sonatype.m2e.mavenarchiver.feature.feature.group    Sonatype, Inc.
  Maven SCM Handler for Subversive      0.13.0.201208191312     
org.sonatype.m2e.subversive.feature.feature.group       Sonatype, Inc.
  Subversive SVN Connectors     3.0.0.I20120818-1700    
org.polarion.eclipse.team.svn.connector.feature.group   Polarion Software
  Subversive SVN Team Provider  1.0.0.I20120818-1700    
org.eclipse.team.svn.feature.group      Eclipse.org
  SVNKit 1.7.5.v1 Implementation (Optional)     3.0.0.I20120818-1700    
org.polarion.eclipse.team.svn.connector.svnkit17.feature.group  Polarion 
Software
  UIMA Runtime  2.4.0   org.apache.uima.runtime.feature.group   Apache Software 
Foundation
  UIMA tools (includes Runtime) 2.4.0   org.apache.uima.tools.feature.group     
Apache Software Foundation

________________________________________
From: Steven Bethard [[email protected]]
Sent: Saturday, October 06, 2012 10:54 PM
To: [email protected]
Subject: Re: Eclipse, Maven and JCasGen

On Oct 6, 2012, at 8:15 PM, "Masanz, James J." <[email protected]> wrote:
> Does it behave that way if you turn "Build Automatically" off?  Would that be 
> an OK work around for now?

Yes, that works, but it's a pretty inconvenient workaround. Also, Eclipse will 
turn it off for all projects, so I'd have to turn it on and off all the time 
(because I don't only work on cTAKES, obviously).

> Otherwise perhaps a post to UIMA's Users forum?

I'm not sure what I'd ask.

What we're doing right now (using <execute/> in the lifecycle mapping for 
exec-maven-plugin) is strongly discouraged by m2e:

http://wiki.eclipse.org/M2E_plugin_execution_not_covered#execute_plugin_goal

And it's guaranteed to run JCasGen on all java executions:

http://stackoverflow.com/questions/6691723/m2e-generated-code-with-exec-maven-plugin

So we know we're doing it wrong, and I'm getting exactly the behavior m2e 
promises when we do that. ;-)

If people are opposed to doing it the way m2e suggests (writing a 
jcasgen-maven-plugin and a connector, as is done in my patch), then I think the 
only alternative would be to use <ignore/> instead of <execute/> so that 
JCasGen never runs in Eclipse.

Steve


>
> ________________________________________
> From: [email protected] 
> [[email protected]] on behalf 
> of Steven Bethard [[email protected]]
> Sent: Friday, October 05, 2012 4:27 PM
> To: [email protected]
> Subject: Re: Eclipse, Maven and JCasGen
>
> On Sep 28, 2012, at 9:58 AM, Steven Bethard <[email protected]> 
> wrote:
>> 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.
>
> So this is still pretty crippling for me. The only way I have found to work 
> on cTAKES right now is to apply the patch I proposed. But every time someone 
> updates a pom.xml, I get merge conflicts and have to spend a bunch of time 
> updating the patch.
>
> Any suggestions of what I can do in the meantime?
>
> Or any progress on reviewing the patch in 
> https://issues.apache.org/jira/browse/CTAKES-65?
>
> Steve
>
>> 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.
>>
>>
>> <ctakes-jcasgen-maven-plugin.diff>
>

Reply via email to