[ 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)