GemFire 8.0 and later
The purpose of this article is to highlight the changes in how CLASSPATH is set in GemFire 8.0 and later vs the older GemFire versions.
In GemFire 7.0.2 and earlier GemFire used the CLASSPATH system property.
To simplify CLASSPATH environment settings and avoid classloader issues, GemFire has organized all application libraries required by GemFire processes into the *-dependencies.jar files. All dependency JAR files are located in $GEMFIRE/lib directory. When starting a server or locator process using gfsh, the required application JAR files are automatically loaded into the process's CLASSPATH for you.
This means that custom jars that was previously on the CLASSPATH in GemFire 7.0.2 will not be loaded in GemFire 8.x without some changes in configuration.
Using GFSH to start up locators and servers there are basically two solutions:
- Use the --classpath to add the directories or jars you need to add
- Use --include-system-classpath to include the CLASSPATH system property