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

Marshall Schor edited comment on UIMA-5293 at 2/27/17 5:56 PM:
---------------------------------------------------------------

Support was added in two styles for slf4j:  non-eclipse plugin style, and 
eclipse-plugin-style.
The non-plugin style: uimaj-core has dependencies on slf4j-api, slf4j-core 
(needed to set levels and other things), log4j 2  core and api (for current 
UIMA logging facade implementation).  These jars plus the binding for slf4j to 
the built-in java.util.logging package are included to ship with the "binary" 
distribution of UIMA.

For the Eclipse plugin - the uimaj-ep-runtime plugin includes uimaj-core, which 
has the above 4 dependencies.  These are excluded using maven exclude 
statements; the runtime plugin instead uses the normal OSGi dependency 
resolution mechanism to hook up a back end.

The superclass for Annotators (AnalysisComponent_ImplBase) was updated to 
include a getLogger() which is just a shortcut for getContext().getLogger().

The UIMA Logger interface was extended to include the SLF4j API plus the Java 8 
style calls from log4j-2.  

The factory config was changed to use the slf4j as the normal implementation. 
This implementation checks to see SLF4j is hooked up to either 
java.util.logging or log4j, and if so, it switches to directly hook up the UIMA 
facade to those back ends.


was (Author: schor):
Support was added in two styles for slf4j:  non-eclipse plugin style, and 
eclipse-plugin-style.
The non-plugin style: uimaj-core has dependencies on slf4j-api, slf4j-core 
(needed to set levels and other things), log4j 2  core and api (for current 
UIMA logging facade implementation).  These jars plus the binding for slf4j to 
log4j 2 jar are packaged to ship with the "binary" distribution of UIMA.

For the Eclipse plugin - the uimaj-ep-runtime plugin includes uimaj-core, which 
has the above 4 dependencies.  These are excluded using maven exclude 
statements; the runtime plugin instead has a OSGi dependency on 
"org.eclipse.m2e.logback.feature.feature.group"; this (not confirmed yet) is 
expected to supply the slf4j bindings and the logback backend for this, like it 
does for the m2e plugin.

The bundle instructions for the uimaj-ep-runtime were updated to specify the 
classes org.apache.logging.log4j* to be "optional".

> uv3 logging upgrade
> -------------------
>
>                 Key: UIMA-5293
>                 URL: https://issues.apache.org/jira/browse/UIMA-5293
>             Project: UIMA
>          Issue Type: Improvement
>          Components: Core Java Framework
>    Affects Versions: 3.0.0SDK-alpha
>            Reporter: Marshall Schor
>            Assignee: Marshall Schor
>            Priority: Minor
>             Fix For: 3.0.0SDK-alpha02
>
>
> Upgrade logging per discussion on dev mailing list, including upgrading 
> existing log4j adapter to support log4j 2, and adding slf4j support.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to