java Javax内容不可访问
我尝试运行安卓应用程序时出现运行时错误,原因是导入了允许我使用Watson服务的软件包
'com。国际商用机器公司沃森。开发者云:java sdk:2.9.0'
事实上,当我使用与此包相关的内容时,出现的错误是:
E/dalvikvm: Could not find class 'javax.naming.InitialContext', referenced from method com.ibm.watson.developer_cloud.util.CredentialUtils.getKeyUsingJNDI
对应的stacktrace为:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: semantic.myapplication, PID: 29120
java.lang.VerifyError: com/ibm/watson/developer_cloud/util/CredentialUtils
at….
我查找了这个错误的真正问题,发现在出现错误的文件“CredentialUtils.java”中,这三个导入未被识别(无法解析符号):
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
我使用Android Studio和最新版本的jdk(1.8.0.77)。这些java文件是存在的,我可以看到它们,但由于某些原因无法访问:在javax中导入每个文件。无法命名(以及其他文件夹)
我怎样才能解决这个问题?我试着导入一个新的。jar文件,包括javax。命名类,但不起作用。有没有办法让这些类可见
任何帮助都将不胜感激。谢谢
# 1 楼答案
我认为您使用的版本比
2.7.1
旧。我无法重现您的问题,我尝试了不同的配置,包括您的配置。 确保清理工作区并获取最新版本的库。 在你的build.gradle
中,你应该有:这是修复您问题的commit。修复程序是在
2.7.1
版本中发布的这就是我所做的,也为我工作:
在Android中使用Watson API的步骤您应该:
File > New > New Project
李>next
、next
、next
和Finish
在
<project-name>/app/build.gradle
中添加:在
MainActiviy.java
中onCreate(...)
末尾添加:启动模拟器并查看控制台。你应该看到这样的消息
以及语音到文本模型列表