[ https://issues.apache.org/jira/browse/UIMA-6446?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Richard Eckart de Castilho updated UIMA-6446: --------------------------------------------- Component/s: uimaFIT > Complexities around enhancing classes with their resource name > -------------------------------------------------------------- > > Key: UIMA-6446 > URL: https://issues.apache.org/jira/browse/UIMA-6446 > Project: UIMA > Issue Type: Bug > Components: uimaFIT, uimaFIT-Maven-Plugin > Reporter: Richard Eckart de Castilho > Assignee: Richard Eckart de Castilho > Priority: Major > > The uimaFIT Maven Plugin contains a mojo called {{enhance}}. This mojo adds a > {{ResourceMetaData}} annotation to every class that does not already have one. > In that case, it also sets the {{name}} field using the resource class name. > Now consider the following scenario: > * component class {{Child}} inherits from (abstract) component class > {{Parent}} > * for some reason, the class {{Parent}} has been enhanced and therefore > carries an auto-generated {{ResourceMetaData("Parent")}} annotation > * for some reason, the class {{Child}} has not been enhanced and also does > not carry a {{ResourceMetaData}} annotation > When generating a descriptor for the component now, e.g. using > {{createEngineDescription(Child.class}}, the name of the resulting component > will be {{Parent}}. > It would seem the approach to solve this problem is to only consider the > {{ResourceMetaData.name}} field when it is defined directly on a component. > However, for the other fields like {{copyright, description, vendor, > version}} it would likewise seem problematic to look them up in parent > classes. In many cases, the parent and the child will be in the same project > - but in many other cases, they may also not be. -- This message was sent by Atlassian Jira (v8.20.7#820007)