【问题标题】:Error running AWS SES sample运行 AWS SES 示例时出错
【发布时间】:2016-02-01 22:35:07
【问题描述】:

我正在尝试在这里运行示例程序http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-using-smtp-java.html 这是命令输出...

$ java AmazonSESSample -cp "javamail-1.4.3/mail.jar"
java.lang.NoClassDefFoundError: javax/mail/Address
        at java.lang.Class.getDeclaredMethods0(Native Method)
        at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
        at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
        at java.lang.Class.getMethod0(Class.java:3018)
        at java.lang.Class.getMethod(Class.java:1784)
        at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544)
        atsun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526)
Caused by: java.lang.ClassNotFoundException: javax.mail.Address
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        ... 7 more
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main"

我尝试使用此搜索字符串在 Google 上寻找答案...

 search string = java mail.jar "Error: A JNI error has occurred, please check your installation and try again"

我没有在搜索结果中看到任何有用的东西 :-(

有什么想法吗?

【问题讨论】:

    标签: amazon-web-services


    【解决方案1】:

    我认为找不到您指示的 JAR 文件 (javamail-1.4.3/mail.jar)..

    java AmazonSESSample -cp "javamail-1.4.3/mail.jar"
    

    尝试提供如下所示的完整路径(以下仅为示例)

    java AmazonSESSample -cp "/usr/lib/javamail-1.4.3/mail.jar"
    

    更新:在 Windows 上尝试以下操作

    java AmazonSESSample -classpath "C:\Users\MichaelDocuments\GitHub\guesstimate\scratch\javamail-1.4.3\mail.jar"
    

    【讨论】:

    • 感谢您的建议。我将尝试查看完全限定的路径是否可以修复错误。
    • $ java AmazonSESSample -cp ".c:\Users\MichaelDocuments\GitHub\guesstimate\scratch\javamail-1.4.3\mail.jar" java.lang.NoClassDefFoundError: javax/mail/Address 。 ..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) ... 7 more Error: A JNI error has occurred, please check your installation and try again Exception in thread "main"
    • 哎呀!我试图完全限定罐子,但似乎没有改善。
    • 什么是“。”在“c:\”前面?
    • 已删除 :) 结果相同。
    【解决方案2】:

    好的,答案是类路径选项位于主类之后。所以 -cp 和 jar 值作为 'args' 传递给 'main' 方法 - doh!!!!!!!!!!!!!!! 只需如下所示移动此选项,即可加载 jar 并按预期找到类。 这个令人沮丧的难题的一个有用结果是我发现了“-verbose:class”,我相信这对未来的其他问题很有用:)

    $ java -verbose:class -cp '.;mail.jar' AmazonSESSample | grep Session
    [Loaded javax.mail.Session from file:/C:/Users/Michael/Documents/GitHub/guesstimate/scratch/mail.jar]
    [Loaded javax.mail.Session$1 from file:/C:/Users/Michael/Documents/GitHub/guesstimate/scratch/mail.jar]
    [Loaded javax.mail.Session$3 from file:/C:/Users/Michael/Documents/GitHub/guesstimate/scratch/mail.jar]
    [Loaded javax.mail.Session$5 from file:/C:/Users/Michael/Documents/GitHub/guesstimate/scratch/mail.jar]
    [Loaded javax.mail.Session$4 from file:/C:/Users/Michael/Documents/GitHub/guesstimate/scratch/mail.jar]
    [Loaded javax.mail.Session$2 from file:/C:/Users/Michael/Documents/GitHub/guesstimate/scratch/mail.jar]
    
    Michael@mikeToshSpare /cygdrive/c/Users/Michael/Documents/GitHub/guesstimate/scratch
    $ java -verbose:class AmazonSESSample -cp '.;mail.jar' | grep Session
    Exception in thread "main" java.lang.NoClassDefFoundError: javax/mail/Session
            at AmazonSESSample.main(AmazonSESSample.java:56)
    Caused by: java.lang.ClassNotFoundException: javax.mail.Session
            at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
            at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
            ... 1 more
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-10
      • 2016-02-27
      • 2015-08-25
      相关资源
      最近更新 更多