When building a GemFire client application (e.g., GemFire 10.0.x or 10.1.x) using Maven or Gradle, several transitive dependencies are pulled in that appear to be server-side only. These include:
Users may wish to exclude these to reduce the application's deployment footprint or to avoid security scanning flags on unused components.
GemFire
In Tanzu GemFire versions prior to the full decoupling of the client and server modules, the gemfire-core dependency is used for both roles. Consequently, the client transitively inherits libraries required for server-only features such as peer-to-peer membership, WAN replication, and JMX management.
Starting with GemFire 10.1, a reference ZIP file is included in the distribution that lists only the JARs necessary for a client. You can use this as a "whitelist" for your project.
The following dependencies are typically safe to exclude in a client-only environment: