【问题标题】:Why are my Alexa Skills Kit dependencies missing?为什么我的 Alexa Skills Kit 依赖项缺失?
【发布时间】:2018-06-26 21:26:04
【问题描述】:

我在 github 上克隆了 Amazon 的 ASK java 存储库并运行 mvn package 在它上面,它产生了以下.jars:

ask-sdk-core-2.3.4.jar
ask-sdk-apache-client-2.3.4.jar
ask-sdk-dynamodb-persistence-adapter-2.3.4.jar
ask-sdk-lambda-support-2.3.4.jar
ask-sdk-servlet-support-2.3.4.jar
ask-sdk-2.3.4.jar

我注意到在尝试为 https://developer.amazon.com/docs/custom-skills 上的类进行某些导入时,例如
import com.amazon.speech.speechlet.servlet.SpeechServlet;
我收到一条消息,指出无法解析 com.amazon.speech,表明该文件不存在。然而,经过进一步调查,我注意到有一个 SkillServlet 类似乎基本上取代了 SpeechServlet 类,因为它能够做 SpeechServlet 所能做的一切, 所以我假设开发人员网站尚未更新以反映更改。

然后我注意到存储库中的一个类 RequestHandler 有一个返回 Optional< Response > 类型对象的方法。当我尝试使用以下导入导入 Response 时:
import com.amazon.ask.model.Response;
我收到一条错误消息,声明
The type com.amazon.ask.model.Response cannot be resolved. It is indirectly referenced from required .class files 这表明项目的类路径中不存在类定义,尽管包含了上述所有 .jar。我搜索并找不到模型目录。我的 Maven 构建失败了吗,我错过了任何 .jars 吗?我正在使用 Eclipse EE IDE,我知道它容易出错,但我已经清理了我的项目并重新启动了 IDE,但无济于事。

更新: 我注意到 ask-sdk-core-2.3.4 目录中的 pom.xml 文件包含 ASK SDK 模型的依赖项,但它似乎没有获得依赖项。我还注意到虽然 ask-sdk-2.3.4 还应该包含 ask-sdk-core-2.3.4 所做的所有事情,因为后者在前者中被列为依赖项,但我必须包含 ask-sdk-core 的 jar单独文件,否则 Eclipse 无法识别某些类。我认为这意味着maven失败了,所以我直接从mvnrepository.com下载了jar。知道为什么会发生这种情况吗?

【问题讨论】:

    标签: java maven alexa alexa-skills-kit


    【解决方案1】:

    如果您使用ask-sdk-2.3.4.jar,那么它应该包含您需要的所有依赖项,就像您在更新简介中注意到的那样。当您在他们的 Github 存储库中查看 Hello World 示例时,pom.xml 仅包含 ask-sdk-2.3.4.jar,但不包含 ask-sdk-2.3.4.jar 中的其他依赖项。 https://github.com/alexa/alexa-skills-kit-sdk-for-java/blob/2.0.x/samples/helloworld/pom.xml

    对于Response 上的错误消息,这是因为您缺少可以从 maven Central 找到的 ask-sdk-model jar。 http://central.maven.org/maven2/com/amazon/alexa/ask-sdk-model/

    我建议使用 maven 和 pom.xml,这样您就不必单独下载 jars。

    【讨论】:

    • 我在运行“mvn package”时确实使用了 maven 和 pom.xml。虽然它与使用 maven 构建不同,因为您必须手动添加 jar 文件,但在我添加 'mvn package' 创建的 jar 文件后,它应该仍然具有相同的效果。
    猜你喜欢
    • 1970-01-01
    • 2023-03-06
    • 2016-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-29
    • 2018-01-05
    • 2012-01-15
    相关资源
    最近更新 更多