Remove antlr4 Dependency?
See original GitHub issueRight now, com.graphql-java:graphql-java:2.1.0
has a dependency on org.antlr:antlr4:4.5.1
in its POM. AFAIK, org.antlr:antlr4:4.5.1
represents the JAR with the tools that you would use to generate your parser/lexer from the grammar. While you might need that to build com.graphql-java:graphql-java
, you should not need that to use com.graphql-java:graphql-java
. The org.antlr:antlr4-runtime:4.5.1
artifact contains the runtime code that gets used by the code-generated parser/lexer.
As it stands, attempting to build an Android app that uses com.graphql-java:graphql-java
results in a build error, due to multiple libraries defining the same Java class. However, if I do this:
compile('com.graphql-java:graphql-java:2.1.0') {
exclude module: 'antlr4'
}
then everything is fine.
Are you really sure that your POM is supposed to list a dependency for org.antlr:antlr4:4.5.1
?
Thanks!
Issue Analytics
- State:
- Created 7 years ago
- Reactions:4
- Comments:9 (5 by maintainers)
@IamCornholio You found and tied together an SO question, a gradle forum post and a github issue; I bow to your google fu!
You should post your pom customization snippet as an answer on SO.
Oh, and for posterity: to build the to-be-published POM locally without publishing:
This build the POM in: