> This page is for SDK, version Current (default).
> For other versions, use one of these documentation indexes:
> - Current (default): https://buildwithfern.com/learn/sdks/current/llms.txt
> - Legacy: https://buildwithfern.com/learn/sdks/legacy/llms.txt

> For clean Markdown content of this page, append .md to this URL. For the complete documentation index, see https://buildwithfern.com/learn/llms.txt.

## 5.0.0

**`(break):`** The Java SDK generator reads configuration from [`sdk-config.yml`](/learn/sdks/reference/sdk-config) instead of `generators.yml`. Run `fern sdk migrate` to create `sdk-config.yml` from your existing configuration. 5.0.0 is also the minimum version for generating Java SDK Config targets locally.

This release changes the generated SDK. See the [Java v5 migration guide](/learn/sdks/legacy/generators/migration-guides/java-v5) for details and code updates:

* Type names and imports change.
* Paginated methods return a pager.
* Responses are validated against the schema.
* Builders require different fields.
* Exceptions are organized by HTTP status.
* Dates and integers use specific types.
* String fields with a declared enum become enums.
* File uploads are set on the request object.
* `label` and `matrix` path parameters are encoded.
* Build files and documentation change.
* WebSocket channels change: credentials are required to connect, the two type packages swap contents, the discriminator is a typed field, parameter wrapper types become `String`, reconnection reports exhaustion, and `disconnect()` before connecting doesn't throw.