java - 加载程序约束Java链接器

标签 java gradle

由以下原因引起的:java.lang.LinkageError:违反加载程序约束:加载程序先前启动了名称为“org / joda / time / DateTime”的其他类型的加载

我认为这是两个 jar 加载相同插件的问题。我正在使用gradle作为自动构建系统-如何解决这个问题?

我试过了

configurations.all {
  resolutionStrategy {
    force "sourceforge:joda-time:2.0"
  }
}

但我认为这不起作用,因为所有操作都在强制执行一个版本的joda-time。

我该如何解决?

最佳答案

该异常通常表示在同一JVM中运行的两个或多个组件之间不兼容(尤其是在容器使用的组件和包含的组件之间)。

是的,这可能与加载同一插件的两个不同版本有关。

因为我还没有遇到过这种特定情况,所以我只能建议使用JVM选项

-verbose:class

或类似的内容(取决于JVM的版本),以更好地识别冲突。

关于java - 加载程序约束Java链接器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18371205/

相关文章:

maven - 使用未集成到gradle中的依赖项ANT项目构建gradle项目

Android Gradle Protobufs : How to compile the full protobuf and not the "lite" version?

java - Xodus 是否需要 txn.commit() ?

java - 在Java中,如何检测字符串是否是unicode转义的

java - 字符串日期到本地日期的转换

java - vaadin setItemCaptionPropertyId 组合框中有多个标题

java - 如何将 jvm arg 传递给使用 gradle 创建的 java 应用程序分发

gradle - gradle中自定义配置的实际使用

android - 迁移项目以gradle构建系统错误

java - 有没有办法使用 NamedParameterJdbcTemplate 和 GeneratedKeyHolder 提取主键(或 ROWID)?