当前位置: 首页 > 知识库问答 >
问题:

Gradle"条目. classpath是重复的,但没有设置重复处理策略"

林雅畅
2023-03-14

我正在尝试构建gradle项目,但当我尝试$gradle build时,我得到以下输出:

Starting a Gradle Daemon (subsequent builds will be faster)
> Task :jar FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':jar'.
> Entry .classpath is a duplicate but no duplicate handling strategy has been set. Please refer to https://docs.gradle.org/7.0/dsl/org.gradle.api.file.CopySpec.html#org.gradle.api.file.CopySpec:duplicatesStrategy for details.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 11s
4 actionable tasks: 2 executed, 2 up-to-date

在执行了getchilditem-Path./-Filter.classpath-Recurse-Force之后,我得出结论,我的项目中甚至没有一个名为.classpath的文件。我该怎么办?

共有3个答案

丘华翰
2023-03-14

我在与kotlin和gradle 7合作时也遇到了同样的问题。解决将以下代码添加到build.gradle.kts中的问题。

tasks.withType<Jar> { duplicatesStrategy = DuplicatesStrategy.INHERIT }
虞博涛
2023-03-14

如果您使用Kotlin DSL和Gradle 7.0,可能是由于KT-46165的错误,应该在版本1.5.0中修复。

谷梁子濯
2023-03-14

类似于@korn回答,我用EXCLUDE策略解决了我的问题;

tasks.withType<Jar>() {

    duplicatesStrategy = DuplicatesStrategy.EXCLUDE

    manifest {
        attributes["Main-Class"] = "MainKt"
    }

    configurations["compileClasspath"].forEach { file: File ->
        from(zipTree(file.absoluteFile))
    }
}
 类似资料:
  • 我有一个问题,而试图使我的java应用程序的脂肪罐。应用程序在使用IntelliJ时正常运行,其操作不会出现错误。 错误: 任务:uberJar失败 失败:生成失败,出现异常。 错误:任务“:uberJar”的执行失败 条目com/netflix/server/context/BiDirectional.class重复,但未设置重复处理策略。请参阅https://docs.gradle.org/7

  • 我有一个多项目成绩。 项目A依赖于项目B,但gradle先编译项目A,然后编译项目B。 我的文件:settings.gradle 设计一个build.gradle 当我构建一个应用程序时,会得到错误。但我不知道该不该重复处理策略 错误:

  • 我将 Digits 移动 sdk 集成到我的项目中,它不再构建。它与我正在使用的gson库有某种冲突。我在构建过程中收到此错误: 这是我的构建.

  • 问题内容: 我有一个PHP表单,可将​​数据输入到我的MySQL数据库中。我的主键是用户输入的值之一。当用户输入表中已经存在的值时,将返回MySQL错误“键1的重复项’输入值’。我想提醒用户他们需要输入一个不同的值,而不是该错误。只是回音或其他内容。我想我的问题归结为:如何将特定的MySQL错误转换为PHP消息谢谢 编辑:下面尼克的答案是不错的,但是有什么办法可以区分特定的错误? 问题答案: 要检

  • 问题内容: 在mysql表中,我有: ID,名称,城市,日期,状态 我想从“信息”中选择所有名称 好吧,结果是它返回了所有条目。我想回显所有没有重复的条目。 说:在原始的“名称”下,我们已经将名称“ John”插入了10次。 我只想回声一次。这可能吗? 问题答案: 很简单: SQL关键字可以解决问题。

  • 我在冬眠中面临一个奇怪的问题。在多线程环境中操作,当尝试插入到其中一个表中时,在表中获得重复的条目。只有主键不同,其余所有其他字段都是完全重复的。 使用Hibernate+Oracle和使用Spring-HibernateTemplate对象。 下面是我的BO类的相关部分,以及下面给出的保存对象的代码。不使用任何瞬态场。 我已经检查了与此相关的其他帖子,但没有一篇针对问题的根本原因。我不想在db表