我正在尝试创建一个Robot类的对象。然而,当我尝试做同样的事情时,我得到了‘java.lang.NullPointerException’。
static Robot robot = null;
try {
robot = new Robot();
if(keyAction.equals("TABPRESS")){
robot.keyPress(KeyEvent.VK_TAB);
}else if(keyAction.equals("TABRELEASE")){
robot.keyRelease(KeyEvent.VK_TAB);
}
}catch(AWTException e){
e.printStackTrace();
}你能建议一下如何处理这个问题吗?这段代码早些时候运行正常。
发布于 2012-08-21 15:39:39
尽管您还没有发送创建keyAction的代码,但这是在此代码片段中唯一可能导致NPE的东西。先检查一下。
此外,调用equals()方法的更好做法是在常量上调用它,并将其他对象作为参数传递。这是空安全的:
if("TABPRESS".equals(keyAction)){
robot.keyPress(KeyEvent.VK_TAB);
}else if("TABRELEASE".equals(keyAction)){
robot.keyRelease(KeyEvent.VK_TAB);
}发布于 2012-08-22 13:56:00
我已经想出了解决办法。这并不是因为任何编程问题。实际上,我的系统上存在Jre版本冲突。我卸载/删除了所有jdks,并安装了新的jdks,一切都开始正常工作。
谢谢,史瑞亚。
https://stackoverflow.com/questions/12050173
复制相似问题