Open
Conversation
cae9a55 to
6e0a74d
Compare
6e0a74d to
e5c8f92
Compare
Signed-off-by: Niels Basjes <niels@basjes.nl>
Signed-off-by: Niels Basjes <niels@basjes.nl>
Signed-off-by: Niels Basjes <niels@basjes.nl>
Signed-off-by: Niels Basjes <niels@basjes.nl>
e5c8f92 to
62b3d9d
Compare
Author
|
Note: The ST4 must be shaded in also because that is the main library that needs the shaded antlr-runtime also. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes in this pull request:
Problem to fix: The spring-ai-template-st module references the Token class from Antlr to access something in the template library. The template library uses Antlr 3 and the added dependency is the Antlr 4 runtime. It is a miracle that actually worked.
Solution: Shade the already provided antlr-runtime (which is V3) and relocate it to a package that is chosen to avoid conflicts with any downstream consuming application.
Problem to fix: antlr4-runtime conflicts when used with other libraries that use Antlr4. #5748
When using Antlr in a project the antlr runtime needs to be an exact matched version of the plugin used to generate the code. If you have a downstream project that has a different dependency that also uses Antlr then there is a high probability there is a conflict in the used runtime and a least one of the components will not work.
Solution: Shade the applicable antlr4-runtime and relocate it to a package that is chosen to avoid conflicts with any downstream consuming application. Also: The generated Anltr4 code was committed to the repo which is not needed at all.
Chore: Updating to the latest Antlr4 version.
NOTE: I used this pattern to relocate the antlr runtime to. This can be changed to
anythingas long as the new package avoids conflicts with any downstream users.shaded.${project.groupId}.${project.artifactId}.library.org.antlr