Many fields in JavaClasses are tightly coupled with Spark Java code; we decide whether to load the relevant code based on the engine.