antlr-runtime is using ST only for DOT diagrams. I don't think we build something for graphviz, so it's safe to keep only and only antlr-runtime.
Thanks, Sergey On Mon, May 16, 2016 at 6:55 PM, William <[email protected]> wrote: > Hi all > I found a weird problem when executing 'mvn dependency:tree > -pl=phoenix-core'. It shows that we depends on both antlr-3.5.jar and > antlr-2.7.7.jar. > > > [INFO] org.apache.phoenix:phoenix-core:jar:4.6-adh6u-SNAPSHOT > [INFO] +- org.antlr:antlr:jar:3.5:compile > [INFO] | \- org.antlr:ST4:jar:4.0.7:compile > [INFO] +- org.antlr:antlr-runtime:jar:3.5:compile > [INFO] | \- org.antlr:stringtemplate:jar:3.2.1:compile > [INFO] | \- antlr:antlr:jar:2.7.7:compile > > > Then we have both antlr 3.5 and 2.7.7. Has anyone ever noticed this? > I checked the phoenix-4.6.0-HBase-1.1-client.jar, it contains both antlr > 3.5 and 2.7.7 too. Fortunately they have different package name and will > not cause unexpected problems. > > > I found the following issues in Antlr's community: > https://github.com/antlr/stringtemplate4/issues/51 > https://github.com/antlr/antlr3/issues/75 > It seems that it is a known issue and has not been solved and never will > be for antlr 3. I don't whether it sill exists in antlr 4. > > > I searched the source code and generated source code and i failed to find > explicit import for classes in antlr-*.jar, but only antlr-runtime. Is > antlr 3.5 necessary for phoenix? > I did the following things: > 1. remove antlr 3.5 dependency from pom > 2. add exclusion of stringtemplate for antlr-runtime (so it will not have > the transit dependency of antlr 2.7.7) > Then, both antlr 3.5 and antlr 2.7.7 disappeared. After that, all IT/UTs > passed. Everything seems to be fine. > > > So, am I right? Is it safe to remove antlr 3.5 dependency? > > > > >
