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

Udo Kohlmeyer reassigned GEODE-8747:
------------------------------------

    Assignee: Udo Kohlmeyer

> Collect library dependencies into single dependency
> ---------------------------------------------------
>
>                 Key: GEODE-8747
>                 URL: https://issues.apache.org/jira/browse/GEODE-8747
>             Project: Geode
>          Issue Type: New Feature
>          Components: build
>            Reporter: Udo Kohlmeyer
>            Assignee: Udo Kohlmeyer
>            Priority: Major
>
> Library dependencies like Spring, Jackson, Spring Security, etc. usually have 
> many dependencies. Which if used within a module, require the listing each of 
> these dependencies.
> With the addition of ClassLoader Isolation a need arose, where these 
> libraries where loaded into a single ClassLoader, instead of being loaded by 
> the ClassLoaders of each of the modules that depended on these libraries.
> This feature is to replace the following:
> {code:groovy}
>     implementation('org.springframework:spring-core')
>     implementation('org.springframework:spring-beans')
>     implementation('org.springframework:spring-context')
>     implementation('org.springframework:spring-jcl')
>     implementation('org.springframework:spring-web')
>     implementation('org.springframework.shell:spring-shell')
> {code}
> with a single entry: 
> {code:groovy}
>    implementation(project(':frameworks:springframework'))
> {code}
> What this new construct allows for is a pattern closer to "using a framework" 
> without having to explicitly define all the library dependencies. In this 
> approach, we "use" a framework library, rather than knowing all of the 
> internal dependencies.
> With this change, the ClassLoader isolation work, will only load each 
> dependency once.
> Currently identified dependencies that require to be loaded only once are:
> Spring and Jackson



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to