firebase / firebase/firebase-admin-java

Jar Hell com.google.http-client:google-http-client two different version

Open
#951 1 comment 2 reactions 0 assignees View on GitHub
needs-triage
Dominant language
Java
Stars
620
Forks
305
Avg merge
3h 23m
Merged PRs (30d)
1

Description

### [READ] Step 1: Are you in the right place?

* For issues or feature requests related to __the code in this repository__
file a Github issue.
* If this is a __feature request__ make sure the issue title starts with "FR:".
* For general technical questions, post a question on [StackOverflow](http://stackoverflow.com/)
with the firebase tag.
* For general Firebase discussion, use the [firebase-talk](https://groups.google.com/forum/#!forum/firebase-talk)
google group.
* For help troubleshooting your application that does not fall under one
of the above categories, reach out to the personalized
[Firebase support channel](https://firebase.google.com/support/).

### [REQUIRED] Step 2: Describe your environment

* Operating System version: Manjaro
* Firebase SDK version: 9.3.0
* Library version: ???
* Firebase Product: firebase-admin

### [REQUIRED] Step 3: Describe the problem

Dependecy:

```

com.google.firebase
firebase-admin
${firebase-admin.version}

```

contains `com.google.http-client:google-http-client` in two different version, what can cause jar hell and method missing in production.

Same problem with:
- com.google.http-client:google-http-client-gson
- io.grpc:grpc-api (really large diffrency 1.27 and 1.60 and 1.62)
- com.google.j2objc:j2objc-annotations
- com.google.errorprone:error_prone_annotations
- com.google.guava:guava

#### Steps to reproduce:

What happened? How can we make the problem occur?
This could be a description, log/console output, etc.

```
mvn
--batch-mode
validate
org.apache.maven.plugins:maven-enforcer-plugin:3.4.1:enforce
-Denforcer.rules=banDuplicatePomDependencyVersions,dependencyConvergence
```

#### Relevant Code:

```
[ERROR] +-pl.com.aaaa:bbbbb:jar:24.2.0-SNAPSHOT
[ERROR] +-com.google.firebase:firebase-admin:jar:9.3.0:compile
[ERROR] +-com.google.api-client:google-api-client-gson:jar:2.4.0:compile
[ERROR] +-com.google.http-client:google-http-client:jar:1.44.1:compile
[ERROR] and
[ERROR] +-pl.com.aaaa:bbbbb:jar:24.2.0-SNAPSHOT
[ERROR] +-com.google.firebase:firebase-admin:jar:9.3.0:compile
[ERROR] +-com.google.http-client:google-http-client:jar:1.44.1:compile
[ERROR] and
[ERROR] +-pl.com.aaaa:bbbbb:jar:24.2.0-SNAPSHOT
[ERROR] +-com.google.firebase:firebase-admin:jar:9.3.0:compile
[ERROR] +-com.google.auth:google-auth-library-oauth2-http:jar:1.23.0:compile
[ERROR] +-com.google.http-client:google-http-client:jar:1.43.3:compile
[ERROR] and
[ERROR] +-pl.com.aaaa:bbbbb:jar:24.2.0-SNAPSHOT
[ERROR] +-com.google.firebase:firebase-admin:jar:9.3.0:compile
[ERROR] +-com.google.cloud:google-cloud-storage:jar:2.38.0:compile
[ERROR] +-com.google.http-client:google-http-client:jar:1.44.1:compile
[ERROR] and
[ERROR] +-pl.com.aaaa:bbbbb:jar:24.2.0-SNAPSHOT
[ERROR] +-com.google.firebase:firebase-admin:jar:9.3.0:compile
[ERROR] +-com.google.cloud:google-cloud-firestore:jar:3.21.1:compile
[ERROR] +-com.google.http-client:google-http-client:jar:1.44.1:compile
```

Contributor guide

Open the contributing guide

Research direction

Start with the firebase-admin dependency in the Maven project and run the listed maven-enforcer-plugin validate command to inspect the dependency tree. Review the conflicting google-http-client, grpc-api, Guava, and related transitive versions. Done means the dependency convergence and duplicate-version checks pass without the reported jar conflicts.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.