Skip to content

JMH Jar generation runs into META-INF duplicates #314

Open
@viluon

Description

@viluon

As of v0.4.14, the tasks for JMH Jar generation (such as benchBenchmarkJar in this particular project) run into duplicates in META-INF/:

zip entry '/home/REDACTED/projects/REDACTED/projects/core-output-observer/model/build/libs/core-output-observer-model-0.0.0-local.jar!META-INF/model.kotlin_module' will be copied to 'META-INF/model.kotlin_module', overwriting zip entry '/home/REDACTED/projects/REDACTED/projects/core/snapshot/model/build/libs/core-snapshot-model-0.0.0-local.jar!META-INF/model.kotlin_module', which has already been copied there.
zip entry '/home/REDACTED/projects/REDACTED/projects/core/raft/model/build/libs/core-raft-model-0.0.0-local.jar!META-INF/model.kotlin_module' will be copied to 'META-INF/model.kotlin_module', overwriting zip entry '/home/REDACTED/projects/REDACTED/projects/core/snapshot/model/build/libs/core-snapshot-model-0.0.0-local.jar!META-INF/model.kotlin_module', which has already been copied there.
zip entry '/home/REDACTED/projects/REDACTED/projects/shared/model/build/libs/shared-model-0.0.0-local.jar!META-INF/model.kotlin_module' will be copied to 'META-INF/model.kotlin_module', overwriting zip entry '/home/REDACTED/projects/REDACTED/projects/core/snapshot/model/build/libs/core-snapshot-model-0.0.0-local.jar!META-INF/model.kotlin_module', which has already been copied there.
zip entry '/home/REDACTED/projects/REDACTED/projects/shared/model/build/libs/shared-model-0.0.0-local-test-fixtures.jar!META-INF/model_testFixtures.kotlin_module' will be copied to 'META-INF/model_testFixtures.kotlin_module', overwriting zip entry '/home/REDACTED/projects/REDACTED/projects/core-output-observer/model/build/libs/core-output-observer-model-0.0.0-local-test-fixtures.jar!META-INF/model_testFixtures.kotlin_module', which has already been copied there.
zip entry '/home/REDACTED/projects/REDACTED/projects/shared/telemetry/model/build/libs/shared-telemetry-model-0.0.0-local.jar!META-INF/model.kotlin_module' will be copied to 'META-INF/model.kotlin_module', overwriting zip entry '/home/REDACTED/projects/REDACTED/projects/core/snapshot/model/build/libs/core-snapshot-model-0.0.0-local.jar!META-INF/model.kotlin_module', which has already been copied there.
zip entry '/home/REDACTED/.gradle/caches/modules-2/files-2.1/org.jooq/jooq-kotlin/3.19.24/6ae5a4b13008b46b53bd247d50141b54f7fcf3b/jooq-kotlin-3.19.24.jar!META-INF/LICENSE.txt' will be copied to 'META-INF/LICENSE.txt', overwriting zip entry '/home/REDACTED/.gradle/caches/modules-2/files-2.1/org.jooq/jooq-kotlin-coroutines/3.19.24/33c295039f0991327eedc84d19b050569c65847/jooq-kotlin-coroutines-3.19.24.jar!META-INF/LICENSE.txt', which has already been copied there.
zip entry '/home/REDACTED/.gradle/caches/modules-2/files-2.1/org.jooq/jooq-kotlin/3.19.24/6ae5a4b13008b46b53bd247d50141b54f7fcf3b/jooq-kotlin-3.19.24.jar!META-INF/README.txt' will be copied to 'META-INF/README.txt', overwriting zip entry '/home/REDACTED/.gradle/caches/modules-2/files-2.1/org.jooq/jooq-kotlin-coroutines/3.19.24/33c295039f0991327eedc84d19b050569c65847/jooq-kotlin-coroutines-3.19.24.jar!META-INF/README.txt', which has already been copied there.

(many more lines like this follow).

It looks like some files in META-INF directories are excluded here:

tree.filter { file ->
!(file.toString().contains("META-INF") && file.name in listOf("module-info.class", "MANIFEST.MF"))
}

However, other files cause conflicts.

For context, the warning is emitted by DuplicateHandlingCopyActionDecorator since at least melix/jmh-gradle-plugin@2237a5b here:
https://github.com/gradle/gradle/blob/e40df2711f8513b6bb539d420e523f4bc4230bd2/platforms/core-configuration/file-operations/src/main/java/org/gradle/api/internal/file/copy/DuplicateHandlingCopyActionDecorator.java#L62-L64

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions