这里我得到空指针异常:ConfigurationManager cm = new ConfigurationManager中(URL);
public static void main(String[] args) throws IOException,
InstantiationException, ClassNotFoundException, SQLException {
HelloWorld h = new HelloWorld();
h.setVisible(true);
try {
URL url;
if (args.length > 0)
url = new File(args[0]).toURI().toURL();
else {
url = HelloWorld.class.getResource("helloworld.config.xml");
}
System.out.println("Loading...");
ConfigurationManager cm = new ConfigurationManager(url);
Recognizer recognizer = (Recognizer) cm.lookup("recognizer");
Microphone microphone = (Microphone) cm.lookup("microphone");
recognizer.allocate();
if (microphone.startRecording()) {
System.out.println("Say: Something");
while (true) {
String printOnTextArea = null;
System.out
.println("Start speaking. Press Ctrl-C to quit.\n");
Result result = recognizer.recognize();
if (result != null) {
String resultText = result.getBestFinalResultNoFiller();
请让我知道如何解决这个问题。?
问题解决了,因为我已将配置文件放在HelloWorld.java的同一个包中 但是在识别器识别器=(识别器)cm.lookup(“识别器”)中找不到另一个类的例外;请告诉我如何解决它。?
答案 0 :(得分:1)
我希望错误是因为url为null。
如果是这种情况
将文件放入包中
将文件路径设为
HelloWorld.class.getResource("package-name/helloworld.config.xml");
或者如果你还没有定义任何包,那么将文件放在src文件夹中。 希望这对你有用。
答案 1 :(得分:0)
这意味着您的变量 url
包含值null
。由于new File(...)
不会返回null
,HelloWorld.class.getResource("helloworld.config.xml");
会返回{{1}}。
确保此资源存在。