You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@uima.apache.org by Peter Klügl <pk...@uni-wuerzburg.de> on 2012/07/11 14:56:56 UTC

Generating types with maven

  Hi,

just a short question:

Can someone give me a hint how the types (e.g., PersonTitle.java, 
PersonTitle_Type.java) are automatically generated during the maven 
build, e.g., a pointer to a project/pom?

I probably overlooked something, but I haven't found any plugin 
definition in the parent pom (in my workspace). The uimaj-examples 
project already contains the types in the SVN (should they be there?) 
and the DictionaryAnnotator (trunk) does not build in my workspace right 
now.

Best,

Peter


-- 
---------------------------------------------------------------------
Dipl.-Inf. Peter Klügl
Universität Würzburg        Tel.: +49-(0)931-31-86741
Am Hubland                  Fax.: +49-(0)931-31-86732
97074 Würzburg              mail: pkluegl@informatik.uni-wuerzburg.de
      http://www.is.informatik.uni-wuerzburg.de/en/staff/kluegl_peter/
---------------------------------------------------------------------


Re: Generating types with maven

Posted by Peter Klügl <pk...@uni-wuerzburg.de>.
  Yes, I remember this issue. We would not have to enforce to generate 
the types, but could do it in projects where is it reasonable. An 
example: I added one type in uimaj-textmarker and thereby changed 38 
additional files. In any release or build, the files would be present 
(as now), but not in the SVN.

Anyhow, this was just a thought and I don't want to urge this. Maybe we 
can discuss this again when there finally is a TextMarker release.

Peter

On 11.07.2012 19:50, Marshall Schor wrote:
> On 7/11/2012 12:10 PM, Peter Klügl wrote:
>>   Ah, ok. My mistake. I've seen this in my workspace some time ago (probably
>> was not uimaj, but cleartk, dkpro or something) and got a bit confused now.
>> Since the types are generated, I thought that this is also supported in our
>> build process.
>>
>> Generating the types (those with no extra code) and not storing them in the
>> SVN sounds reasonable to me. Especially since the file changes when you call
>> JCasGen, e.g., " * Updated by JCasGen Wed Jul 11 15:10:37 CEST 2012". What do
>> you think?
> An issue to consider:
>
> Type systems often reference other type systems.  JCasGen does the official UIMA
> "merge" of all the type systems referenced, at generation time.  Sometimes this
> is wanted, other times, this is not wanted (see
> https://issues.apache.org/jira/browse/UIMA-1176 ).
>
> User code references the generated JCas type system cover classes.  If these
> were not available in SVN, the generate step would be needed to be run.  I
> suppose we could develop a maven plugin that did this; it would need access to
> the referenced type systems (see above).  And m2e (for Eclipse) would need some
> setup to get this to run at load time.
>
> -Marshall
>> Peter
>>
>>
>> On 11.07.2012 17:57, Marshall Schor wrote:
>>> On 7/11/2012 8:56 AM, Peter Klügl wrote:
>>>>    Hi,
>>>>
>>>> just a short question:
>>>>
>>>> Can someone give me a hint how the types (e.g., PersonTitle.java,
>>>> PersonTitle_Type.java) are automatically generated during the maven build,
>>>> e.g., a pointer to a project/pom?
>>> Types are generated by the JCasGen tool.  For people who use the Eclipse IDE,
>>> there's a UIMA plugin for Eclipse that provides a form-based editor for the UIMA
>>> XML descriptors, and for those descriptors which involve type systems, it
>>> provides a push-button to run the tool and add the generated classes to your
>>> Eclipse project sources.
>>>
>>> For those not using the Eclipse IDE, the JCasGen tool can be run from the
>>> command line.  This tool is documented in our documentation, here:
>>> http://uima.apache.org/d/uimaj-2.4.0/tools.html#ugr.tools.jcasgen
>>>> I probably overlooked something, but I haven't found any plugin definition in
>>>> the parent pom (in my workspace). The uimaj-examples project already contains
>>>> the types in the SVN (should they be there?)
>>> Yes, they should be there.
>>>> and the DictionaryAnnotator (trunk) does not build in my workspace right now.
>>> There was a recent change to this that is being rolled back.  See
>>> https://issues.apache.org/jira/browse/UIMA-2430
>>> Maybe that affected the build (I haven't tried myself, yet).
>>>
>>> -Marshall
>>>> Best,
>>>>
>>>> Peter
>>>>
>>>>
>>


-- 
---------------------------------------------------------------------
Dipl.-Inf. Peter Klügl
Universität Würzburg        Tel.: +49-(0)931-31-86741
Am Hubland                  Fax.: +49-(0)931-31-86732
97074 Würzburg              mail: pkluegl@informatik.uni-wuerzburg.de
      http://www.is.informatik.uni-wuerzburg.de/en/staff/kluegl_peter/
---------------------------------------------------------------------


Re: Generating types with maven

Posted by Marshall Schor <ms...@schor.com>.
On 7/11/2012 12:10 PM, Peter Klügl wrote:
>  Ah, ok. My mistake. I've seen this in my workspace some time ago (probably
> was not uimaj, but cleartk, dkpro or something) and got a bit confused now.
> Since the types are generated, I thought that this is also supported in our
> build process.
>
> Generating the types (those with no extra code) and not storing them in the
> SVN sounds reasonable to me. Especially since the file changes when you call
> JCasGen, e.g., " * Updated by JCasGen Wed Jul 11 15:10:37 CEST 2012". What do
> you think?

An issue to consider:

Type systems often reference other type systems.  JCasGen does the official UIMA
"merge" of all the type systems referenced, at generation time.  Sometimes this
is wanted, other times, this is not wanted (see
https://issues.apache.org/jira/browse/UIMA-1176 ). 

User code references the generated JCas type system cover classes.  If these
were not available in SVN, the generate step would be needed to be run.  I
suppose we could develop a maven plugin that did this; it would need access to
the referenced type systems (see above).  And m2e (for Eclipse) would need some
setup to get this to run at load time.

-Marshall
>
> Peter
>
>
> On 11.07.2012 17:57, Marshall Schor wrote:
>> On 7/11/2012 8:56 AM, Peter Klügl wrote:
>>>   Hi,
>>>
>>> just a short question:
>>>
>>> Can someone give me a hint how the types (e.g., PersonTitle.java,
>>> PersonTitle_Type.java) are automatically generated during the maven build,
>>> e.g., a pointer to a project/pom?
>> Types are generated by the JCasGen tool.  For people who use the Eclipse IDE,
>> there's a UIMA plugin for Eclipse that provides a form-based editor for the UIMA
>> XML descriptors, and for those descriptors which involve type systems, it
>> provides a push-button to run the tool and add the generated classes to your
>> Eclipse project sources.
>>
>> For those not using the Eclipse IDE, the JCasGen tool can be run from the
>> command line.  This tool is documented in our documentation, here:
>> http://uima.apache.org/d/uimaj-2.4.0/tools.html#ugr.tools.jcasgen
>>> I probably overlooked something, but I haven't found any plugin definition in
>>> the parent pom (in my workspace). The uimaj-examples project already contains
>>> the types in the SVN (should they be there?)
>> Yes, they should be there.
>>> and the DictionaryAnnotator (trunk) does not build in my workspace right now.
>> There was a recent change to this that is being rolled back.  See
>> https://issues.apache.org/jira/browse/UIMA-2430
>> Maybe that affected the build (I haven't tried myself, yet).
>>
>> -Marshall
>>> Best,
>>>
>>> Peter
>>>
>>>
>
>



Re: Generating types with maven

Posted by Peter Klügl <pk...@uni-wuerzburg.de>.
  Ah, ok. My mistake. I've seen this in my workspace some time ago 
(probably was not uimaj, but cleartk, dkpro or something) and got a bit 
confused now. Since the types are generated, I thought that this is also 
supported in our build process.

Generating the types (those with no extra code) and not storing them in 
the SVN sounds reasonable to me. Especially since the file changes when 
you call JCasGen, e.g., " * Updated by JCasGen Wed Jul 11 15:10:37 CEST 
2012". What do you think?

Peter


On 11.07.2012 17:57, Marshall Schor wrote:
> On 7/11/2012 8:56 AM, Peter Klügl wrote:
>>   Hi,
>>
>> just a short question:
>>
>> Can someone give me a hint how the types (e.g., PersonTitle.java,
>> PersonTitle_Type.java) are automatically generated during the maven build,
>> e.g., a pointer to a project/pom?
> Types are generated by the JCasGen tool.  For people who use the Eclipse IDE,
> there's a UIMA plugin for Eclipse that provides a form-based editor for the UIMA
> XML descriptors, and for those descriptors which involve type systems, it
> provides a push-button to run the tool and add the generated classes to your
> Eclipse project sources.
>
> For those not using the Eclipse IDE, the JCasGen tool can be run from the
> command line.  This tool is documented in our documentation, here:
> http://uima.apache.org/d/uimaj-2.4.0/tools.html#ugr.tools.jcasgen
>> I probably overlooked something, but I haven't found any plugin definition in
>> the parent pom (in my workspace). The uimaj-examples project already contains
>> the types in the SVN (should they be there?)
> Yes, they should be there.
>> and the DictionaryAnnotator (trunk) does not build in my workspace right now.
> There was a recent change to this that is being rolled back.  See
> https://issues.apache.org/jira/browse/UIMA-2430
> Maybe that affected the build (I haven't tried myself, yet).
>
> -Marshall
>> Best,
>>
>> Peter
>>
>>


-- 
---------------------------------------------------------------------
Dipl.-Inf. Peter Klügl
Universität Würzburg        Tel.: +49-(0)931-31-86741
Am Hubland                  Fax.: +49-(0)931-31-86732
97074 Würzburg              mail: pkluegl@informatik.uni-wuerzburg.de
      http://www.is.informatik.uni-wuerzburg.de/en/staff/kluegl_peter/
---------------------------------------------------------------------


Re: Generating types with maven

Posted by Marshall Schor <ms...@schor.com>.
On 7/11/2012 8:56 AM, Peter Klügl wrote:
>  Hi,
>
> just a short question:
>
> Can someone give me a hint how the types (e.g., PersonTitle.java,
> PersonTitle_Type.java) are automatically generated during the maven build,
> e.g., a pointer to a project/pom?

Types are generated by the JCasGen tool.  For people who use the Eclipse IDE,
there's a UIMA plugin for Eclipse that provides a form-based editor for the UIMA
XML descriptors, and for those descriptors which involve type systems, it
provides a push-button to run the tool and add the generated classes to your
Eclipse project sources.

For those not using the Eclipse IDE, the JCasGen tool can be run from the
command line.  This tool is documented in our documentation, here:
http://uima.apache.org/d/uimaj-2.4.0/tools.html#ugr.tools.jcasgen
>
> I probably overlooked something, but I haven't found any plugin definition in
> the parent pom (in my workspace). The uimaj-examples project already contains
> the types in the SVN (should they be there?) 

Yes, they should be there.
> and the DictionaryAnnotator (trunk) does not build in my workspace right now.

There was a recent change to this that is being rolled back.  See
https://issues.apache.org/jira/browse/UIMA-2430
Maybe that affected the build (I haven't tried myself, yet).

-Marshall
>
> Best,
>
> Peter
>
>



Re: Generating types with maven

Posted by Richard Eckart de Castilho <ec...@ukp.informatik.tu-darmstadt.de>.
Hi Peter,

check out the uimaFIT pom. We generate types for the test cases.

-- Richard

Am 11.07.2012 um 21:56 schrieb Peter Klügl:

> Hi,
> 
> just a short question:
> 
> Can someone give me a hint how the types (e.g., PersonTitle.java, PersonTitle_Type.java) are automatically generated during the maven build, e.g., a pointer to a project/pom?
> 
> I probably overlooked something, but I haven't found any plugin definition in the parent pom (in my workspace). The uimaj-examples project already contains the types in the SVN (should they be there?) and the DictionaryAnnotator (trunk) does not build in my workspace right now.
> 
> Best,
> 
> Peter

-- 
------------------------------------------------------------------- 
Richard Eckart de Castilho
Technical Lead
Ubiquitous Knowledge Processing Lab (UKP-TUD) 
FB 20 Computer Science Department      
Technische Universität Darmstadt 
Hochschulstr. 10, D-64289 Darmstadt, Germany 
phone [+49] (0)6151 16-7477, fax -5455, room S2/02/B117
eckart@ukp.informatik.tu-darmstadt.de 
www.ukp.tu-darmstadt.de 
Web Research at TU Darmstadt (WeRC) www.werc.tu-darmstadt.de
-------------------------------------------------------------------