You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@uima.apache.org by "Benjamin Douglas (JIRA)" <de...@uima.apache.org> on 2013/01/22 20:30:17 UTC

[jira] [Commented] (UIMA-2471) add a jcasgen-maven-plugin (and m2e connector)

    [ https://issues.apache.org/jira/browse/UIMA-2471?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13559916#comment-13559916 ] 

Benjamin Douglas commented on UIMA-2471:
----------------------------------------

+1, works great for me. And eclipse picked up the generated sources without any fuss.

Minor suggestion: if you have a typo in your configuration code and put a path to a non-existent file in the <typeSystem> parameter, it exits with a generic NullPointerException. A more informative error message would be appreciated.

Thanks!
                
> add a jcasgen-maven-plugin (and m2e connector)
> ----------------------------------------------
>
>                 Key: UIMA-2471
>                 URL: https://issues.apache.org/jira/browse/UIMA-2471
>             Project: UIMA
>          Issue Type: New Feature
>            Reporter: Steven Bethard
>         Attachments: jcasgen-maven-plugin.zip
>
>
> To properly use JCasGen in a Maven build, it would be nice to have a real Maven plugin dedicated to JCasGen. The current workaround is a bit complex: you have to use a uimaFIT wrapper of JCasGen plus the exec-maven-plugin and the build-helper-maven-plugin:
> http://mail-archives.apache.org/mod_mbox/uima-user/201010.mbox/%3C4CC06F1D.3010206@ogren.info%3E
> This workaround also interacts poorly with Eclipse. There's no m2e connector for the exec-maven-plugin, which means you have to add some configuration to your pom:
> http://wiki.eclipse.org/M2E_plugin_execution_not_covered
> And then the plugin will be executed on every build - even if you haven't modified they type system descriptor - which can be quite painful for large type systems.
> Instead, I'd like to see a jcasgen-maven-plugin that allows you to write something like:
> <plugin>
>   <groupId>org.apache.uima</groupId>
>   <artifactId>jcasgen-maven-plugin</artifactId>
>   <configuration>
>     <typeSystem>src/main/resources/TypeSystem.xml</typeSystem>
>   </configuration>
>   <executions>
>     <execution>
>       <goals>
>         <goal>generate</goal>
>       </goals>
>     </execution>
>   </executions>
> </plugin>
> This plugin would also have a corresponding m2e connector that only runs JCasGen when the type system file changed.
> I spent some time trying to put a first draft of these two things together. Here's a jcasgen-maven-plugin:
> http://cleartk.googlecode.com/git/jcasgen-maven-plugin/
> And here's an m2e connector for that plugin:
> http://cleartk.googlecode.com/git/jcasgen-m2e-connector/
> If you'd like to try them out, I've deployed the jcasgen-maven-plugin to Maven Central:
> http://search.maven.org/#search%7Cga%7C1%7Ca%3A%22jcasgen-maven-plugin%22
> And I've created an Eclipse update site for the m2e connector:
> http://cleartk.googlecode.com/git/jcasgen-m2e-connector/org.cleartk.plugin.jcasgen.m2e.repo/target/repository/
> The pom XML snippet I gave above should work, except that the group is "org.cleartk" instead of "org.apache.uima".
> Is there any interest in this? I'd be happy to help transition the code over to Apache if others would like to see this as part of the UIMA distribution.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira