首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java.lang.NoSuchMethodError -Ljava/lang/String;

java.lang.NoSuchMethodError -Ljava/lang/String;
EN

Stack Overflow用户
提问于 2016-08-29 05:17:16
回答 3查看 51.5K关注 0票数 12

我的代码在下面出现了一个错误;

线程"main“java.lang.NoSuchMethodError: java.lang.NoSuchMethodError中的异常

但它在另一个当地环境下运转良好。到目前为止,我的代码如下;

代码语言:javascript
复制
try {
    System.out.println("Encrypted CBC passwd : "
         + Client.cypherCBC("CypherThePassword"));
} catch (Exception e) {
    e.printStackTrace();
}
EN

回答 3

Stack Overflow用户

发布于 2016-08-29 06:26:06

这是由于运行时JAR或类错配造成的。编译应用程序时存在的"Client“类有一个静态方法"cypherCBC”,它获取字符串参数,但是在运行时,类加载器加载了"Client“类,它没有这种方法(相同的名称具有相同的签名)。

如果可以在运行时调试应用程序,请在抛出异常的行中放置一个断点,然后尝试计算以下表达式,

代码语言:javascript
复制
Client.class.getResource("Client.class")

,然后您可以找到类的来源,然后您可以反编译并尝试解决这个问题。

票数 8
EN

Stack Overflow用户

发布于 2019-01-29 08:15:46

在Weblogic中运行web应用程序时,我也遇到了同样的错误。造成此错误的原因是在environment.To修复中有两个版本的类,您必须弄清楚在运行时使用的是哪个.class。我使用以下方法来标识在运行时加载了哪个类。

-verbose:class

票数 3
EN

Stack Overflow用户

发布于 2022-07-13 12:11:43

您的类路径上有一个重复的类。所以,这就是为什么JVM混淆了需要选择的方法,因为两个类都有一个具有不同签名的方法,您正试图调用它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39198914

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档