java icon indicating copy to clipboard operation
java copied to clipboard

Duplicate classes shipped in client-java-api and client-java-api-fluent

Open stevenschlansker opened this issue 2 years ago • 3 comments
trafficstars

Describe the bug We have an existing project that uses client-java-api jar. We add a new feature that uses Kubectl from client-java-extended. Extended has a transitive dependency on client-java-api-fluent. The Fluent jar ships many of the same class files as the api jar, leading to build errors like:

[ERROR] Found duplicate (but equal) classes in [io.kubernetes:client-java-api-fluent:19.0.0, io.kubernetes:client-java-api:19.0.0]:
[ERROR]   io.kubernetes.client.openapi.models.AdmissionregistrationV1ServiceReference
[ERROR]   io.kubernetes.client.openapi.models.AdmissionregistrationV1WebhookClientConfig
[ERROR]   io.kubernetes.client.openapi.models.ApiextensionsV1ServiceReference
[ERROR]   io.kubernetes.client.openapi.models.ApiextensionsV1WebhookClientConfig
[ERROR]   io.kubernetes.client.openapi.models.ApiregistrationV1ServiceReference
[ERROR]   io.kubernetes.client.openapi.models.AuthenticationV1TokenRequest
...

Client Version 19.0.0

To Reproduce Have a build plugin that ensures no two JARs have the same class files. Depend on client-java-api-fluent and client-java-api in the same build.

Expected behavior Each class should exist in exactly one JAR file, instead of being duplicated between client-java-api and client-java-api-fluent

stevenschlansker avatar Nov 06 '23 22:11 stevenschlansker

We'll take a look at this. Much of this is auto-magically generated so it's probably going to take some sleuthing to figure out what went wrong.

brendandburns avatar Nov 07 '23 15:11 brendandburns

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle stale
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Feb 05 '24 16:02 k8s-triage-robot

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle rotten
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle rotten

k8s-triage-robot avatar Mar 06 '24 16:03 k8s-triage-robot

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs.

This bot triages issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Reopen this issue with /reopen
  • Mark this issue as fresh with /remove-lifecycle rotten
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/close not-planned

k8s-triage-robot avatar Apr 05 '24 17:04 k8s-triage-robot

@k8s-triage-robot: Closing this issue, marking it as "Not Planned".

In response to this:

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs.

This bot triages issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Reopen this issue with /reopen
  • Mark this issue as fresh with /remove-lifecycle rotten
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/close not-planned

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

k8s-ci-robot avatar Apr 05 '24 17:04 k8s-ci-robot

Well that sucks. Seems pretty pointless to bother diagnosing and reporting issues with k8s if they just close.

stevenschlansker avatar Apr 05 '24 17:04 stevenschlansker