You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by "Remko Popma (JIRA)" <ji...@apache.org> on 2014/09/24 04:05:34 UTC

[jira] [Updated] (LOG4J2-797) log4j-core should be listed as runtime dependency

     [ https://issues.apache.org/jira/browse/LOG4J2-797?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Remko Popma updated LOG4J2-797:
-------------------------------
    Fix Version/s: 2.1
         Assignee: Remko Popma

[~merzedes] Thanks for the clarification. How about this text:

{quote}
Log4j is broken up in an API and an implementation, where the API provides the interface that applications should code to. So, strictly speaking the Log4j implementation is only needed at runtime and not at compile time.

In our recommendations below we list the implementation as a compile time dependency to improve the startup time for [custom plugins|http://logging.apache.org/log4j/2.x/manual/plugins.html].

The implementation contains an annotation processor that will scan for custom plugins during compilation and generate a metadata file that allows Log4j to quickly find custom plugins at runtime. This processor is run by the Java compiler, so the implementation is listed as a compile dependency.
{quote}
Too much detail? Perhaps only add this to the Gradle section instead of at  the top of the page?


> log4j-core should be listed as runtime dependency
> -------------------------------------------------
>
>                 Key: LOG4J2-797
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-797
>             Project: Log4j 2
>          Issue Type: Improvement
>          Components: Documentation
>    Affects Versions: 2.0.2
>         Environment: http://logging.apache.org/log4j/2.x/maven-artifacts.html
>            Reporter: whaefelinger
>            Assignee: Remko Popma
>            Priority: Minor
>             Fix For: 2.1
>
>
> The documentation (website: http://logging.apache.org/log4j/2.x/maven-artifacts.html) lists "log4j-core" as compile dependency (Gradle). 
> While this at not wrong, it does not hit the idea of api/core separation. Thus I suggest to list "log4j-core" as runtime dependency, i.e.
> {code}
> dependencies {
>   compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.0.2'
>   runtime group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.0.2'
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org