Will your change reload?
Find the outcome, exact conditions and next action for the edit you want to make.
Start with the change, then read its conditions. A reloaded class does not automatically mean refreshed framework metadata or a changed database schema.
Showing 81 changes
| Your change | Outcome | Conditions & next step |
|---|---|---|
| JavaEdit an existing method body | Reloads | Compile a supported edit into a watched output. Existing object fields remain on the JVM method-body-only path. Framework follow-up can separately recreate beans. Read conditions & scope → |
| JavaAdd or remove a method | Conditional | Stock-JDK companion mode supports hot-compiled calls; new methods do not become native members of the original Class. Previously held removed members can retain their last implementation. Read conditions & scope → |
| JavaAdd an instance field | Conditional | Stock mode stores added fields separately. Isolated initializers run on first read for existing objects; constructor-dependent or entangled initializers retain type defaults with a reason. Read conditions & scope → |
| JavaRead/write an added field from another class | Conditional | Both owner and caller must be watched/reloaded in the measured direct-access shape. Field-type changes and every inherited/loader variant are not certified. Read conditions & scope → |
| JavaAdd a static field with an initializer | Conditional | Compile-time constants and separable initializers, including bounded forward conditionals/switches, are supported. Existing static blocks and values are not reset. Read conditions & scope → |
| JavaChange an already initialized static field initializer | Restart | Later saves preserve the current added static value, including null or application writes. Reload does not replay arbitrary static initialization. Read conditions & scope → |
| JavaChange an inlined compile-time constant | Conditional | Callers can retain their old literal until recompiled. AutoCompile can rebuild detected watched sources; unwatched consumers remain outside that repair. Read conditions & scope → |
| JavaAppend an enum constant / remove its final constant | Conditional | Documented on JDK 17–25 with ordinal-preserving edits. Existing application arrays sized from the old enum length do not grow. Read conditions & scope → |
| JavaInsert/reorder enum values or remove a non-tail value | Restart | The edit renumbers ordinals; Reclazz refuses it. Restart alone does not migrate persisted ordinal data. Read conditions & scope → |
| JavaAdd or remove an implemented interface | Conditional | Requires a compatible enhanced-redefinition JVM such as JBR/DCEVM. Stock JVMs refuse the type change. Read conditions & scope → |
| JavaChange a superclass | Restart | The loaded superclass stays unchanged. Eligible bodies may apply; dependent methods stay pinned and unsafe signatures/constructors can refuse the whole save. Read conditions & scope → |
| JavaDiscover added members through arbitrary reflection | Restart | On stock JVMs the original Class lacks companion members. Explicit framework adapters have separate scope; arbitrary reflective consumers do not. Read conditions & scope → |
| JavaAssume every Java 17+ vendor/version is certified | Unverified | Java 17+ is the target. The main recorded portable lanes are stock SapMachine 17/21 on macOS arm64, not every vendor, OS or future JDK. Read conditions & scope → |
| SpringRefresh an affected singleton bean | Conditional | Supported bean paths destroy/recreate the singleton and repair bounded references. Mutable bean state can reset; arbitrary external holders are not repaired. Read conditions & scope → |
| SpringAdd a new component class | Conditional | Direct/composed stereotypes, native name/condition selection and singleton/prototype/lazy creation are supported. Not a repeat of full startup scanning. Read conditions & scope → |
| SpringAdd a component with a web/custom scope or scoped proxy | Restart | The new-component path refuses these scope shapes. Normal singleton/prototype support does not imply custom scope enrollment. Read conditions & scope → |
| SpringReevaluate every filtered component after a profile/property edit | Unverified | New-component conditions are registration-time decisions. General later rediscovery and startup import/auto-configuration replay are outside this path. Read conditions & scope → |
| SpringAdd an @Bean factory method | Conditional | Bounded lite/full/static configuration paths support documented arguments, aliases, selection and direct conditions. Existing names/custom scopes/unknown composed conditions are restricted. Read conditions & scope → |
| SpringChange existing injection or lifecycle metadata | Conditional | Spring metadata caches are refreshed on supported bean paths. Recreation has state and reference limits; it is not an arbitrary graph rewrite. Read conditions & scope → |
| SpringAdd @PostConstruct / @PreDestroy methods | Conditional | Supported plain singletons use the javax Spring 5 / Jakarta Spring 6 lanes. Each instance keeps its added destroy callback through later edits/removal. Read conditions & scope → |
| SpringAdd @Transactional or cache-advised service methods | Conditional | Supported public singleton operations use native interceptors; bounded composed metadata is supported. Compile the caller and respect the proxy/advice allowlist. Read conditions & scope → |
| SpringAdd pre/post authorization to a new service operation | Conditional | Named classic/modern Spring Security graphs support direct and bounded composed policies. Unknown security infrastructure/advice shapes are refused. Read conditions & scope → |
| SpringEdit an @Aspect pointcut | Conditional | Updates supported existing mutable singleton JDK/CGLIB proxy chains. Previously unproxied targets and unsupported proxy shapes are outside this path. Read conditions & scope → |
| SpringAdd/edit/remove @Scheduled methods | Conditional | Direct no-argument void callbacks on supported singletons, with documented proxy/transaction/cache/async combinations. Removal cancels the registration. Read conditions & scope → |
| SpringAdd/edit/remove @EventListener methods | Conditional | Direct callbacks with one reference event input and void/single-event return on supported singletons. Filtering/order/conditions and advice have bounded scope. Read conditions & scope → |
| SpringAdd @TransactionalEventListener methods | Conditional | Direct void methods on supported unproxied singletons; Spring handles phase/fallback/conditions/order. Reload retires queued callbacks from the old added registration. Read conditions & scope → |
| SpringAdd @Async service methods | Conditional | Direct public methods support void, Future and CompletableFuture with native executor/error handling and supported transaction/cache advice. Read conditions & scope → |
| SpringReload a helper captured by a constructor-injected leaf | Conditional | Exact supported factories, plain two-node shapes and one measured direct-child context form. Aliases, broader graphs, proxies/factory products and lifecycle-owned shapes are excluded. Read conditions & scope → |
| Web & JSONAdd/change a controller endpoint | Conditional | Supported controller mapping rescans include added methods on stock JVMs. Receiver, metadata and classloader shapes still matter. Read conditions & scope → |
| Web & JSONAdd @ExceptionHandler methods | Conditional | Plain controllers/advice and standard resolver on Framework 5.3.39/6.1.14; bounded synchronous metadata. Proxy/inheritance/generic/composed/custom resolver shapes are excluded. Read conditions & scope → |
| Web & JSONAdd @InitBinder / @ModelAttribute methods | Conditional | Supported plain controller/advice adapters preserve named binding, model rules and native advice order/selectors. Read the exact callback allowlist. Read conditions & scope → |
| Web & JSONAdd Jackson getters, setters or DTO fields | Conditional | Supported Spring-managed mapper adapter; mutable DTOs and saved annotations. Final added fields are not writable; creator/record/builder additions are excluded. Read conditions & scope → |
| Web & JSONAssume every serializer discovers companion members | Unverified | Jackson’s explicit adapter does not establish arbitrary Gson/custom mapper or record-creator support. Stock original-class reflection remains limited. Read conditions & scope → |
| Web & JSONChange validation constraints on an existing field | Conditional | Supported Hibernate Validator metadata caches are cleared in both javax/Jakarta factory discovery paths. Do not infer arbitrary validator/provider compatibility. Read conditions & scope → |
| Web & JSONEdit an existing Spring Security HTTP rule | Conditional | Supported SecurityFilterChain beans rebuild into the live FilterChainProxy. Inline ignoring chains remain; a failed rebuild can keep the previous rules serving. Read conditions & scope → |
| MessagingAdd/edit/remove a Kafka listener | Conditional | Plain singleton, direct callback, explicit literal ID, documented topic/group/options and standard record-mode factory. Native consumers retire before replacement. Read conditions & scope → |
| MessagingAdd/edit/remove a JMS listener | Conditional | Plain singleton with standard processor/registry/default container factory. Literal or placeholder destinations/selectors; bounded result and callback shapes. Read conditions & scope → |
| MessagingAdd synchronous JMS replies | Conditional | Documented return types and direct @SendTo. JMSReplyTo takes priority; null sends nothing. No arbitrary DTO/Future/reactive return claim. Read conditions & scope → |
| MessagingAdd/edit/remove a Rabbit listener | Conditional | Plain receiver, standard simple container, AUTO acknowledgment/default executor and bounded queue/options. Startup worker hook must track complete retirement. Read conditions & scope → |
| MessagingChange a Kafka/Rabbit expression-driven route | Conditional | Documented native SpEL values are reevaluated when the listener is saved. Evaluation occurs after old consumers retire and can fail without restoring them. Read conditions & scope → |
| MessagingReroute consumers by changing only a routing property/bean | Conditional | The documented added Kafka/Rabbit expression path does not automatically reroute on a property/bean-only edit; a listener re-save is the supported live action. Read conditions & scope → |
| MessagingRecreate JMS/Kafka consumers after a helper/property save | Conditional | Separately measured narrow root-context leaf-owner transactions; exact factories, constructor and callback shapes. Not arbitrary consumer graphs. Read conditions & scope → |
| MessagingRecreate Rabbit consumers through property/dependency cascades | Conditional | Measured on Framework 5.3.39/AMQP 2.4.17 and Framework 6.1.14/AMQP 3.1.7, stock JDK 17/21 on macOS arm64: one root context, plain local helper/leaf owner, one void literal-ID callback, native simple containers, AUTO acknowledgment and nontransacted channels. Read conditions & scope → |
| MessagingReload one bean mixing Kafka/JMS/Rabbit consumers | Restart | Unsupported mixed ownership is refused before owned consumers retire. Single-broker coordination is not a combined broker transaction. Read conditions & scope → |
| MessagingAssume XA, hosted clusters, rebalances or exactly-once reload | Unverified | Local broker observations do not certify every hosted/failure/transactional topology. Rabbit reply/async and broader custom container paths are separate gaps. Read conditions & scope → |
| ConfigurationEdit recognized Boot properties | Conditional | Candidate binding/conversion/validation occurs before live mutation. Uncheckable/invalid candidates remain pending; live setter/recreation failure can partially apply. Read conditions & scope → |
| ConfigurationEdit nested YAML values or indexed lists | Conditional | Already-loaded local Boot resources with stable source/document ownership. Current native lane is Boot 2.7.18 / SnakeYAML 1.30, not all Boot versions. Read conditions & scope → |
| ConfigurationDelete a key or a recognized Boot file | Conditional | Removal reveals lower-priority values/defaults in the supported source path. Mutable property identities are preserved; read-only/write-only removal shapes are uncheckable. Read conditions & scope → |
| ConfigurationChange active documents, imports, profiles or config locations | Restart | Stable source positions/document activation are prerequisites. Startup config topology is not rebuilt by a value save. Read conditions & scope → |
| ConfigurationChange direct or computed @Value inputs | Conditional | Fields, scalar constructor inputs and supported factory arguments have distinct check/recreation paths. Unsupported expression operations hold the candidate. Read conditions & scope → |
| ConfigurationEdit a property on a loaded ordinary XML bean | Conditional | Resolved local file/context ownership plus supported value shape. Setter errors can preserve metadata but still have application side effects. Read conditions & scope → |
| ConfigurationEdit existing XML constructor/factory/lifecycle metadata | Conditional | Bounded ordinary singleton recreation, stable concrete type/ownership and supported direct holders. Native observer: Spring 5.3.39 / JDK 21. Read conditions & scope → |
| ConfigurationChange XML scope, parent, aliases or creation policy | Restart | Existing metadata changes such as depends-on/primary/autowire/effective lazy flag are guarded. Supported property edits do not rebuild startup policy. Read conditions & scope → |
| ConfigurationSave unchanged unsupported XML definitions | No reload | A proven unchanged standard definition stays quiet, including known abstract/prototype shapes. Unknown/custom metadata retains conservative diagnostics. Read conditions & scope → |
| ConfigurationEdit newly imported, remote or packaged XML | Unverified | Captured-local discovery does not cover remote/JAR resources, pre-hook loads or a general import-topology rebuild. Read conditions & scope → |
| ConfigurationEdit recognized physical message bundles | Conditional | Named native Spring message-source/cache lanes; arbitrary custom basenames and automatic source-to-output copying are not established. Read conditions & scope → |
| ConfigurationEdit recognized file templates | Conditional | Named FreeMarker/Thymeleaf file-resolver lanes. Malformed saves can produce render errors; last-valid retention is not promised. Read conditions & scope → |
| ConfigurationEdit resources inside packaged JAR/WAR files | Unverified | Physical-file observers do not establish packaged-resource replacement or arbitrary view-resolver integration. Read conditions & scope → |
| ConfigurationChange a supported logging level/configuration | Conditional | Supported logging.level keys or logback/log4j2 config refresh. Removing a level without a fallback can still need reset/restart. Read conditions & scope → |
| ConfigurationExpect arbitrary files to trigger a reload | No reload | ChangeKind recognizes specific suffixes and owned resources. Unknown kinds have no Reclazz reload action; another framework may independently serve the file. Read conditions & scope → |
| PersistenceAdd a mapped field to an existing entity | Conditional | Requires enhanced visibility plus supported jpaRefresh=true/DDL-enabled mapping path; stock companion fields are not native ORM members. Read conditions & scope → |
| PersistenceAdd a new JPA entity with a prepared schema | Conditional | jpaRefresh=true, explicit Hibernate validate, one unit and standard provider/factory in the recorded graph. No automatic migration or update-mode switch. Read conditions & scope → |
| PersistenceRetry a new-entity mapping after a schema failure | Conditional | Failed candidate leaves the previous factory open before install. Identical bytes are ignored; changing pending mapping declarations is refused. Read conditions & scope → |
| PersistenceKeep old persistence contexts/transactions through a rebuild | Restart | A successful persistence-unit swap retires the old native factory. Holding active old contexts across it is unsupported. Read conditions & scope → |
| PersistenceEdit supported Spring Data query methods | Conditional | Warm singleton Repository products and bounded direct holder repair. Scalar H2 native-query evidence does not cover new interface methods/all query shapes. Read conditions & scope → |
| PersistenceInvalidate caches dependent on changed helper code | Conditional | Observed synchronous Spring cache dependencies in stock companion mode; region-level conservative eviction. Async/unwatched/pre-attach work is not complete. Read conditions & scope → |
| PersistenceRebuild a custom cache owner after helper changes | Conditional | refreshOwnersOnHelper opt-in for supported singleton owners. Non-singletons, FactoryBeans and event-listener owners are declined. Read conditions & scope → |
| SAP CommerceSave *-items.xml / *-beans.xml | Conditional | Platform generation/build can reload generated classes. Persistence/type-system updates and native reflection are separate requirements. Read conditions & scope → |
| SAP CommerceCreate columns through Update Running System | Conditional | Manual HAC action is separate from reload. autoUpdateRunningSystem=true is a distinct off-by-default dev-only DDL opt-in. Read conditions & scope → |
| SAP CommerceApply changed SAP configuration keys | Conditional | Changed keys reach the Config path; successful keys acknowledge independently. Startup-only consumers are still reported as restart-required. Read conditions & scope → |
| SAP CommerceEdit type/enum localization or Backoffice labels | Conditional | Recognized physical locale/label files refresh the platform caches they serve. Broader tenant/cluster acceptance is not implied. Read conditions & scope → |
| SAP CommerceImport a changed ImpEx file automatically | Conditional | autoImpex=true opt-in writes live development data. REMOVE/macro-expanded REMOVE is refused unless separately permitted; no rollback. Read conditions & scope → |
| SAP CommerceRefresh supported interceptor mappings | Conditional | Mappings are captured before bean refresh and re-registered in the actual SAP registry. SDK contract is not live model-save tenant acceptance. Read conditions & scope → |
| SAP CommerceEdit OCC field sets, mappings or supported directives | Conditional | Dedicated field-set/request-mapping/populator/list-merge paths have individual ownership and registration limits. Not arbitrary platform topology reload. Read conditions & scope → |
| SAP CommerceAdd an extension to the platform | Restart | The extension list is established at startup. Generated-bytecode reload does not enroll a new extension. Read conditions & scope → |
| SAP CommerceEdit *-backoffice-config.xml | Conditional | The source resets supported CockpitConfigurationService caches through Resettable.reset, without resetToDefaults. Packaged module copies can still answer until rebuilt. Read conditions & scope → |
| SAP CommerceAdd a Backoffice @SocketEvent action | Restart | Class replacement does not register the new action in existing widgets. Existing action-body edits use ordinary class reload; label/config caches are separate. Read conditions & scope → |
| SAP CommerceEdit or delete a registered SAP process definition XML | Restart | Recognized local process-definition resources produce a diagnostic only. No running process is changed or replayed; unrelated XML does not become a process resource by name. Read conditions & scope → |
| OperationsAdd a new dependency JAR to the JVM classpath | Restart | The running JVM startup classpath is not replaced by watching class outputs. Read conditions & scope → |
| OperationsAvoid a supported request crossing a method-body reload | Conditional | reloadBoundary=request at startup, supported native MVC hook/lifetimes. Drain deadline defers; it is not batch/schema/background atomicity. Read conditions & scope → |
| OperationsApply class output from a failed/paused build | Conditional | Build admission holds output until a successful captured batch; SCAN alone cannot release the hold. Manual pause is an independent switch. Read conditions & scope → |
No matching change. Try another term or reset the filters. Missing from this table does not establish support.
When a change spans more than one row
Apply the most restrictive relevant condition. Adding a model field can combine a supported bytecode change, a reflection restriction and a required schema update. Check each layer, then verify the runtime behavior. A partial or refused framework step should stay visible in the pending ledger.
“No reload” means this path applies no Reclazz change, including a valid no-op save or an unhandled file kind. “Unverified” is a missing acceptance result. It does not mean a feature always fails, and it should not be presented as guaranteed support. Use the pinned technical reference for version-specific test provenance.
Sources & version scope
Documentation source 1.4.0 · evidence baseline 75535bd · reviewed 19 October 2026. Check your installed artifact; source features may postdate a release.