简体   繁体   English

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

[英]java.lang.NoSuchMethodError - Ljava/lang/String;)Ljava/lang/String;

My code is giving an error below;我的代码在下面给出错误;

Exception in thread "main" java.lang.NoSuchMethodError: com/myApp/Client.cypherCBC(Ljava/lang/String;)Ljava/lang/String;线程“主”java.lang.NoSuchMethodError 中的异常:com/myApp/Client.cypherCBC(Ljava/lang/String;)Ljava/lang/String;

But it's working fine in an another local environment.但它在另一个本地环境中运行良好。 My code so far is below;到目前为止,我的代码如下;

try {
    System.out.println("Encrypted CBC passwd : "
         + Client.cypherCBC("CypherThePassword"));
} catch (Exception e) {
    e.printStackTrace();
}

This is due to a run-time JAR or class mismatch.这是由于运行时 JAR 或类不匹配造成的。 the "Client" class which was there at the time you compile your application has a static method "cypherCBC" which gets String parameter, but at run-time class loader has loaded the "Client" class which doesn't have that kind of method (same name with same signature).编译应用程序时存在的“客户端”类有一个静态方法“cypherCBC”,它获取字符串参数,但在运行时类加载器加载了没有那种方法的“客户端”类(同名同署名)。

if you can debug the application at runtime, put a break-point at the line which exception was thrown, then try to evaluate following expression,如果您可以在运行时调试应用程序,请在引发异常的行放置一个断点,然后尝试评估以下表达式,

Client.class.getResource("Client.class")

, then you can find where the class has been leaded from, then you can decompile and try to troubleshoot the issue. ,然后你可以找到这个类是从哪里引出来的,然后你可以反编译并尝试解决问题。

I got the same error while running a web application in Weblogic.在 Weblogic 中运行 Web 应用程序时,我遇到了同样的错误。 The reason for this error is there are two versions of classes are in the environment.To fix this you have to figure out which .class is using at the run time.此错误的原因是环境中有两个版本的类。要解决此问题,您必须确定运行时正在使用哪个 .class。 I used following to identify which class is loaded at run time.我使用以下来确定在运行时加载了哪个类。

-verbose:class -详细:类

There is a duplicate class on your classpath.您的类路径上有一个重复的类。 So, That is why JVM is getting confused that which one needs to pick because both classes have a same method with a different signature that you are trying to call.所以,这就是为什么 JVM 对需要选择哪个感到困惑,因为这两个类具有相同的方法,但您尝试调用的签名不同。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 java.lang.NoSuchMethodError:org.quartz.Scheduler.deleteTrigger(Ljava/lang/String;Ljava/lang/String;)V - java.lang.NoSuchMethodError:org.quartz.Scheduler.deleteTrigger(Ljava/lang/String;Ljava/lang/String;)V java.lang.NoSuchMethodError:org.jboss.logging.Logger.getMessageLogger(Ljava / lang / Class; Ljava / lang / String;)Ljava / lang / Object; - java.lang.NoSuchMethodError: org.jboss.logging.Logger.getMessageLogger(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object; 引起原因:java.lang.NoSuchMethodError:org.quartz.JobDataMap.put(Ljava / lang / String; Ljava / lang / Object;)Ljava / lang / Object - Caused by: java.lang.NoSuchMethodError: org.quartz.JobDataMap.put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object java.lang.NoSuchMethodError:org.apache.spark.ui.SparkUI.addStaticHandler(Ljava / lang / String; Ljava / lang / String; - java.lang.NoSuchMethodError: org.apache.spark.ui.SparkUI.addStaticHandler(Ljava/lang/String;Ljava/lang/String; Selenium Phantomjs 驱动程序 - java.lang.NoSuchMethodError: org.openqa.selenium.os.CommandLine.find(Ljava/lang/String;)Ljava/lang/String; - Selenium Phantomjs driver - java.lang.NoSuchMethodError: org.openqa.selenium.os.CommandLine.find(Ljava/lang/String;)Ljava/lang/String; Jackson Error:java.lang.NoSuchMethodError:`com.fasterxml.jackson.databind.JsonNode.asText(Ljava / lang / String;)Ljava / lang / String` - Jackson Error : java.lang.NoSuchMethodError: `com.fasterxml.jackson.databind.JsonNode.asText(Ljava/lang/String;)Ljava/lang/String` java.lang.NoSuchMethodError: org.apache.hadoop.conf.Configuration.addDeprecation(Ljava/lang/String;[Ljava/lang/String;) - java.lang.NoSuchMethodError: org.apache.hadoop.conf.Configuration.addDeprecation(Ljava/lang/String;[Ljava/lang/String;) Selenium 4: 获取 java.lang.NoSuchMethodError: org.openqa.selenium.WebElement.getDomAttribute/String; - Selenium 4 : Getting java.lang.NoSuchMethodError: org.openqa.selenium.WebElement.getDomAttribute(Ljava/lang/String;)Ljava/lang/String; java.lang.NoSuchMethodError:org.apache.commons.lang.StringUtils.isBlank(Ljava / lang / String;)Z错误 - java.lang.NoSuchMethodError: org.apache.commons.lang.StringUtils.isBlank(Ljava/lang/String;)Z Error 造成原因:java.lang.NoSuchMethodError:org.springframework.beans.MutablePropertyValues.get(Ljava / lang / String;)Ljava / lang / Object - Caused by: java.lang.NoSuchMethodError: org.springframework.beans.MutablePropertyValues.get(Ljava/lang/String;)Ljava/lang/Object
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM