[ https://issues.apache.org/jira/browse/KAFKA-13027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17391352#comment-17391352 ]
Frode Carlsen commented on KAFKA-13027: --------------------------------------- [~dongjin] do you have an idea of when this might be published? For client libraries it might be prudent to allow a transition phase in which both javax and jakarta is supported for new versions. This would not require a full update to jetty 11, but could use alternative strategies for client-side libraries, for example such as: * (I've created a PR for the Confluent Schema Registry Client here, that eliminates the JavaEE/Jakarta dependencies: [https://github.com/confluentinc/schema-registry/pull/1933] * Use [eclipse-transformer|https://github.com/eclipse/transformer] to publish alternative client artifacts (used by swagger, hibernate, etc.) during the transition > Support for Jakarta EE 9.x to allow applications to migrate > ----------------------------------------------------------- > > Key: KAFKA-13027 > URL: https://issues.apache.org/jira/browse/KAFKA-13027 > Project: Kafka > Issue Type: Improvement > Affects Versions: 2.8.0 > Reporter: Frode Carlsen > Priority: Major > > Some of the kafka libraries (such as connect-api) have direct dependencies on > older Java EE 8 specifications (e.g. javax.ws.rs:javax.ws.rs-api:2.1.1). > This creates issues in environments upgrading to Jakarta 9.0 and beyond (9.1 > requires minimum Java 11). For example upgrading web application servers > such as migrating to Jetty 11. > The main thing preventing backwards compatibility is that the package > namespace has moved from "*javax.**" to "*jakarta.**", along with a few > namespace changes in XML configuration files. (new specifications are > published here [https://jakarta.ee/specifications/,] along with references to > official artifacts and compliant implementations). > From KAFKA-12894 (KIP-705) it appears dropping support for java 8 won't > happen till Q4 2022, which makes it harder to migrate to Jakarta 9.1, but 9.0 > is still Java 8 compatible. > Therefore, to allow projects that use Kafka client libraries to migrate prior > to the full work being completed in a future Kafka version, would it be > possible to generate Jakarta 9 compatible artifacts and dual publish these > for libraries that now depend on javax.ws.rs / javax.servlet and similar? > This is done by a number of open source libraries, as an alternative to > having different release branches for the time being. Other than the > namespace change in 9.0 and minimum java LTS version in 9.1, the apis are > fully compatible with Java EE 8. > As a suggestion, this fairly easy to do automaticallly using the > [https://github.com/eclipse/transformer/] for migration (most projects end up > publishing under artifacts with a either "-jakarta" as a suffix on the > artifactId or classifier) -- This message was sent by Atlassian Jira (v8.3.4#803005)