我正在尝试创建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();
}
您能否建议如何处理?此代码之前运行正常。
答案 0 :(得分:2)
虽然您尚未发送创建keyAction
的代码,但这是唯一可能导致此代码片段中的NPE的内容。先检查一下。
此外,调用equals()
方法的更好方法是将其调用为常量并将其他对象作为参数传递。这是空的安全:
if("TABPRESS".equals(keyAction)){
robot.keyPress(KeyEvent.VK_TAB);
}else if("TABRELEASE".equals(keyAction)){
robot.keyRelease(KeyEvent.VK_TAB);
}
答案 1 :(得分:0)
我已经找到了解决方案。这不是因为任何编程问题。实际上,我的系统上存在Jre版本的冲突。我卸载/删除了所有的jdks并安装了一个新的,一切都开始正常了。
谢谢,Shreyas。