无法使用Lambda部署示例Alexa技能

and*_*ell 5 java amazon-web-services alexa aws-lambda alexa-skills-kit

我正在尝试从示例项目部署Alexa HelloWorld技能:https://github.com/amzn/alexa-skills-kit-java,提交b58bfa641c7d58c476b80a4e8dd5ccbe0f9b2c40.

根据我运行的自述文件:

mvn assembly:assembly -DdescriptorId=jar-with-dependencies package
Run Code Online (Sandbox Code Playgroud)

并将生成的alexa-skills-kit-samples-1.0-jar-with-dependencies.jar上传到Lambda控制台.当我尝试测试Lambda(在Web控制台中)时,我得到:

START RequestId: fe219281-be67-11e5-b15e-d79134e05828 Version: $LATEST
Class not found: helloworld.HelloWorldSpeechletRequestStreamHandler: class java.lang.ClassNotFoundException
java.lang.ClassNotFoundException: helloworld.HelloWorldSpeechletRequestStreamHandler
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:348)

END RequestId: fe219281-be67-11e5-b15e-d79134e05828
REPORT RequestId: fe219281-be67-11e5-b15e-d79134e05828  Duration: 0.90 ms   Billed Duration: 100 ms     Memory Size: 512 MB Max Memory Used: 10 MB
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

小智 6

我也得到了同样的错误.

看来我们需要在目录"alexa-skills-kit-java-master\samples"中运行mvn命令,而不是从"alexa-skills-kit-java-master"运行.

在"alexa-skills-kit-java-master\samples\target"下创建的JAR具有helloworld类,我能够成功测试该技能.