java - 在 driver=new ChromeDriver(); 行上获取 "InvocationTargetException"异常;

标签 java selenium-webdriver reflection selenium-chromedriver invocationtargetexception

我正在打开 Chrome 浏览器,并收到异常“InitationTargetException”。几天前代码运行正常。这是我的代码

System.setProperty("webdriver.chrome.driver","D:\\Automation\\chromedriver_win32\\chromedriver.exe");
driver=new ChromeDriver();

"driver=new ChromeDriver();" 行,我收到 "InitationTargetException" 异常

最佳答案

调用目标异常

InvocationTargetException是一个已检查的异常,它包装了由调用的方法或构造函数抛出的异常。通过反射调用方法,这是一个额外的抽象级别。反射层将所有异常包装在 InitationTargetException 中。在构造时提供并通过 getTargetException() 访问的“目标异常”方法现在被称为原因,可以通过 Throwable.getCause() 访问方法,以及前面提到的“遗留方法”。

解决方案

最好的方法是解开InitationTargetException中的原因以获取原始异常。

try {

        System.setProperty("webdriver.chrome.driver","D:\\Automation\\chromedriver_win32\\chromedriver.exe");
        WebDriver driver=new ChromeDriver();

} catch (InvocationTargetException e) {
        // the real cause
        e.getCause().printStackTrace();

} catch (Exception e) {
        // generic exception handling
        e.printStackTrace();
}
<小时/>

最佳实践

根据最佳实践,请遵循以下准则:

关于java - 在 driver=new ChromeDriver(); 行上获取 "InvocationTargetException"异常;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55846217/

相关文章:

java - 如果我在点击开始后通过主菜单运行它,战舰应用程序会崩溃

java - 当按钮没有 id 和标题,但有悬停状态时,如何识别并单击 selenium webdriver 中的按钮?

Java - 反射,转换到一个未知的对象?

typescript - 有没有办法获取 typescript 对象的所有必需属性

java:使用变量的值作为对象名称(不是 eval() 方式)

java.io.IOException 将 "player"纹理添加到屏幕时出现困难

java - RandomAccessFile 读取 Jar 文件中的文件

java - 为什么我无法证明我的代码中需要 AtomicReference?

java - 减少在 selenium 上的截图时间

python-3.x - Selenium Webdriver python XPath 不工作