【问题标题】:AmazonServiceException class not found找不到 AmazonServiceException 类
【发布时间】:2017-01-31 16:07:37
【问题描述】:

当将 java 类路径设置为“aws-java-sdk-1.10.49.jar”时,我正在使用 AWS SDK 将文件上传到 S3 存储桶,程序运行良好,但是将 jar 文件替换为更高版本时“aws- java-sdk-1.11.35.jar”,我得到一个异常“AmazonServiceException class not found as below。”

线程“主”java.lang.NoClassDefFoundError 中的异常:com/amazonaws/AmazonServiceException 在 java.lang.Class.getDeclaredMethods0(本机方法) 在 java.lang.Class.privateGetDeclaredMethods(Class.java:2701) 在 java.lang.Class.privateGetMethodRecursive(Class.java:3048) 在 java.lang.Class.getMethod0(Class.java:3018) 在 java.lang.Class.getMethod(Class.java:1784) 在 sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544) 在 sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526) 引起:java.lang.ClassNotFoundException:com.amazonaws.AmazonServiceException 在 java.net.URLClassLoader.findClass(URLClassLoader.java:381) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:424) 在 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:357)

有什么帮助吗?

【问题讨论】:

  • 类路径上是否有两个版本的 AWS 开发工具包?
  • 不,一个版本如下:$JAVA_HOME/bin/java -classpath ./commons-httpclient.jar:${LIBDIR}/ojdbc6-11.2.0.3.jar:./commons-logging。 jar:./log4j-1.2.17.jar:./commons-codec-1.8.jar:./aws-java-sdk-1.11.35.jar:./aws-java-sdk-s3-1.11.35。罐子:./jackson-databind-2.5。 3.jar:./jackson-core-2.5.3.jar:./jackson-annotations-2.5.0.jar:./httpclient-4.3.3.jar:./httpcore-4.3.2.jar:./ javax.jms-1.1 .jar:/amazon-sqs-java-messaging-lib-1.0.0.jar:./commons-io-2.4.jar:./javax.json-1.0.4.jar:./json -simple-1.1.1.jar awss3.testUpload

标签: amazon-web-services amazon-s3


【解决方案1】:

这里有三个可能的问题:

    1234563 .jar 并且程序因 java.lang.NoClassDefFoundError 而失败,我想知道出了什么问题。
  1. 该类不在 Classpath 中,没有确切的方法可以知道它,但很多时候你可以看看打印 System.getproperty("java.classpath") 它会从在那里你至少可以了解你的实际运行时类路径。

  2. 只需尝试使用显式 -classpath 选项和您认为可以工作的类路径运行,如果它正常工作,那么这是一个明确的简短信号,表明有人正在覆盖 java 类路径。

看看this的文章

【讨论】:

  • 谢谢,我刚刚创建了另一个项目并添加了所有 Maven 依赖项并运行该程序工作正常,但对于第一个程序仍然抱怨 classNotFound!!!!我确定我在 java CLASSPATH 中明确指定了 aws-java-sdk-1.11.23.jar。仅供参考..程序在 Eclipse 中运行良好,在 Linux 中运行时会出现问题
猜你喜欢
  • 2017-08-13
  • 2019-04-10
  • 1970-01-01
  • 1970-01-01
  • 2021-02-09
  • 2020-10-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多