2016-01-19 61 views
5

我想從示例項目部署這裏的Alexa HelloWorld技巧:https://github.com/amzn/alexa-skills-kit-java,在提交b58bfa641c7d58c476b80a4e8dd5ccbe0f9b2c40。無法使用Lambda部署示例Alexa技能

每自述我運行:

mvn assembly:assembly -DdescriptorId=jar-with-dependencies package 

和上傳所得的alexa-技能試劑盒的樣品-1.0-罐與 - dependencies.jar到拉姆達控制檯。當我嘗試測試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 

我在想什麼?

+1

您可以驗證處理程序類是否包含在jar中?即'unzip -l target/alexa-skills-kit-samples-1.0-jar -with-dependencies.jar'應該顯示一個文件,路徑爲'helloworld/HelloWorldSpeechletRequestStreamHandler.class'。 –

回答

6

我也遇到了同樣的錯誤。

看來我們需要在「alexa-skills-kit-java-master \ samples」目錄下運行mvn命令,而不是從「alexa-skills-kit-java-master」運行。

在「alexa-skills-kit-java-master \ samples \ target」下創建的JAR具有helloworld類,我能夠成功測試該技能。

+0

也爲我工作。我發現這個有用的http://thegeekettespeaketh.com/2017/02/build-an-alexa-skill-java-1/,看起來有人提交了一個pull request來改變文檔https://github.com/amzn/Alexa的技能-KIT-的java /拉/ 62 – andydavies