【问题标题】:Check your module classpath for missing or conflicting dependencies [closed]检查您的模块类路径是否存在缺失或冲突的依赖项[关闭]
【发布时间】:2018-10-22 13:49:09
【问题描述】:

我有一个使用 Java 和 Kotlin 的项目,我能够成功运行和构建它。但是,当我在 IntelliJ 中打开项目时,我在许多项目文件中看到相同的错误。

错误是“无法访问类 'java.lang.String'。检查您的模块类路径是否存在缺失或冲突的依赖项”

查看附图中的错误:


另一个在初始化Kotlin MultiPlatform Mobile项目时发生错误的例子:

cannot access 'java.lang.Object' which is a supertype of 'org.gradle.api.artifacts.dsl.RepositoryHandler'. Check your module classpath for missing or conflicting dependencies

这个错误的根源是什么?我该如何解决?

【问题讨论】:

  • 您是否尝试过运行“文件|使缓存无效”?如果没有帮助,请分享 build.gradle 以检查使用的依赖项。
  • 我怀疑您的项目/模块没有配置 JDK。打开 Project Structure 并查找 Project SDK 或 Module SDK
  • @AndreyBreslav,JDK 和 SDK 照常连接。 Java 项目运行稳定。完全重新安装理想后问题得到解决。
  • 也许违反直觉,在项目结构 > 模块 > yourmodule > 依赖项下,“模块 SDK”需要是合适的 Java SDK,不是 Kotlin SDK。 (这为我解决了类似的问题。)
  • 我遇到了这个问题,因为我在项目中添加了 Java SDK 和 Kotlin SDK。当我删除 Kotlin 并重新启动它时,我只需要 Java SDK。

标签: java kotlin intellij-idea jvm kotlin-multiplatform


【解决方案1】:

如果您的项目设置了 JDK,那么可能 IDE (Intellij) 没有设置 JDK,但您构建的应用程序可以在所需的 JVM 下正常运行。

【讨论】:

    【解决方案2】:

    在我们的项目中,我们遇到了这个问题,因为我们将相同的目录添加到生产和测试源中。

    sourceSets {
      main.java.srcDirs += 'src/main/kotlin/'
      main.java.srcDirs += 'build/generated/source/protos/main/java'
      test.java.srcDirs += 'src/test/kotlin/'
      test.java.srcDirs += 'build/generated/source/protos/main/java'
    }
    

    从测试源中删除重复项解决了问题。

    sourceSets {
      main.java.srcDirs += 'src/main/kotlin/'
      main.java.srcDirs += 'build/generated/source/protos/main/java'
      test.java.srcDirs += 'src/test/kotlin/'
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-07-01
      • 2023-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多