linghengqian opened a new issue, #7036: URL: https://github.com/apache/incubator-seata/issues/7036
<!-- Please do not use this issue template to report security vulnerabilities but refer to our [security policy](https://github.com/seata/seata/security/policy). --> ## Why you need it? Is your feature request related to a problem? Please describe in details - I personally noticed that Seata is still using `org.antlr:antlr4:4.8` when writing downstream documents like https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/special-api/transaction/seata/ and https://www.yuque.com/linghengqian/meve2v/es8d3a8a18odao7x . - The use of old versions of Antlr4 causes downstream projects to always manually exclude the Antlr4 dependency in Seata Client. ```xml <dependency> <groupId>org.apache.seata</groupId> <artifactId>seata-all</artifactId> <version>2.2.0</version> <exclusions> <exclusion> <groupId>org.antlr</groupId> <artifactId>antlr4-runtime</artifactId> </exclusion> </exclusions> </dependency> ``` - At the source, ShardingSphere uses Maven Plugin of `org.antlr:antlr4-maven-plugin:4.10.1` to compile `*.g4` files, while `org.antlr:antlr4-runtime:4.8` used by `org.apache.seata:seata-all:2.2.0` obviously cannot read the binary of `org.antlr:antlr4-maven-plugin:4.10.1`. - This affects the integration of projects including Hibernate, ShardingSphere, and Spark. Because the core reason why ShardingSphere updated the Antlr4 version is https://github.com/hibernate/hibernate-orm/discussions/4975 on the Hibernate side. See https://github.com/apache/shardingsphere/pull/23550 . - Although Spark 4.0.0 with Antlr4 4.10+ has not been officially released, Spark 4.0.0-preview2 with https://github.com/apache/spark/pull/43075 has been released. See https://spark.apache.org/news/spark-4.0.0-preview2.html . This will definitely cause some problems in Seata integration testing. ## How it could be? A clear and concise description of what you want to happen. You can explain more about input of the feature, and output of it. - Long story short, I expect Seata Client to update the version of `org.antlr:antlr4` from `4.8` to `4.10.1`. This necessarily means raising the minimum JDK compilation level for compiling Seata to JDK11. - `org.antlr:antlr4-maven-plugin:4.10.1` requires JDK 11, but `org.antlr:antlr4-runtime:4.10.1` still works on JDK 8. So I don't think this is likely to affect downstream users using JDK8, only developers need to use JDK11+ to compile Seata. See https://lists.apache.org/thread/kgtfx5vnw73o61lkvdshyfvjfvvzk3js . ## Other related information Add any other context or screenshots about the feature request here. - See https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/special-api/transaction/seata/ and https://www.yuque.com/linghengqian/meve2v/es8d3a8a18odao7x . -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@seata.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: notifications-unsubscr...@seata.apache.org For additional commands, e-mail: notifications-h...@seata.apache.org