selenium4.0版本在springboot中的使用问题的坑

想着写一个程序来进行订饭,首先想到了用selenium来进行开发,但是在开发的过程中遇到了问题。

添加上了jar包,写好了代码就测试时发现出现了异常。

java.lang.NoClassDefFoundError: org/openqa/selenium/internal/Require

Caused by: java.lang.ClassNotFoundException: org.openqa.selenium.internal.Require

可以确定这是少了这个类 !但是明明在非springboot版本中使用4.0版本的selenium是好用的,并不会报错,为什么在springboot就报错了,首先猜测是跟springboot中的版本冲突了。

于是边去maven中查看导入的依赖,结果发现selenium的版本由4.0.0变成了3.141.59,找到原因了。

又去spring-boot-dependencies模块中去搜索selenium发现默认的版本的为3.141.59

到这里发现是springboot的pom坐标配置覆盖了自己写的pom坐标,所以才会出现类org/openqa/selenium/internal/Require找不到的情况。

这里有个疑惑点,难道不应该是自己写的pom坐标覆盖spring-boot-dependencies中的pom坐标嘛?

知道问题所在,接下来就是让自己的坐标覆盖默认的坐标!改动如下,程序正常运行

引入的jar包版本也改为了4.0.0

该问题只有在selenium与springboot一起使用时才会出现!

到此这篇关于selenium4.0版本在springboot中的使用问题的坑的文章就介绍到这了,更多相关springboot使用selenium4.0内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 搭建 springboot selenium 网页文件转图片环境的详细教程

    1. 环境准备 需要有 chrome 浏览器 + chrome driver + selenium 客户端 离线 chrome 下载地址 # 64位 linux 系统 https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm # 64位 weindow 系统 http://www.google.cn/chrome/browser/desktop/index.html?standalone=1&platfo

  • selenium4.0版本在springboot中的使用问题的坑

    想着写一个程序来进行订饭,首先想到了用selenium来进行开发,但是在开发的过程中遇到了问题. 添加上了jar包,写好了代码就测试时发现出现了异常. java.lang.NoClassDefFoundError: org/openqa/selenium/internal/Require Caused by: java.lang.ClassNotFoundException: org.openqa.selenium.internal.Require 可以确定这是少了这个类 !但是明明在非spri

  • SpringBoot中使用@scheduled定时执行任务的坑

    目录 解决办法 1.将@Scheduled注释的方法内部改成异步执行 2.把Scheduled配置成成多线程执行 要注意什么坑 不绕弯子了,直接说这个坑是啥: SpringBoot使用@scheduled定时执行任务的时候是在一个单线程中,如果有多个任务,其中一个任务执行时间过长,则有可能会导致其他后续任务被阻塞直到该任务执行完成.也就是会造成一些任务无法定时执行的错觉 可以通过如下代码进行测试:     @Scheduled(cron = "0/1 * * * * ? ")    

  • mybatis逆向工程与分页在springboot中的应用及遇到坑

    最近在项目中应用到springboot与mybatis,在进行整合过程中遇到一些坑,在此将其整理出来,便于以后查阅与复习. 项目运行环境为:eclispe+jdk1.8+maven 搭建Spring Boot环境 首先建立maven project,在生成的pom文件中加入依赖,代码如下: <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-

  • springboot中使用@Transactional注解事物不生效的坑

    一:在springboot中使用事物遇到的坑 1.我们知道spring中的事物分为两种:一种是编程式事物,一种是声明式事物.顾名思义,编程式事物是指通过代码去实现事物管理,这里不做过多说明.另一种是声明式事物,分为两种情况01:一种是通过传统xml方式配置,02:使用@Transaction注解方式配置,这是主要讲解的是通过注解方式配置.因为在springboot项目中,会自动配置DataSourceTransactionManager,我们只需要在对应的方法上或者类上加上@Transactio

  • SpringBoot中对应2.0.x版本的Redis配置详解

    properties格式: # REDIS (RedisProperties) # Redis数据库索引(默认为0) spring.redis.database=0 # Redis服务器地址 spring.redis.host=localhost # Redis服务器连接端口 spring.redis.port=6379 # Redis服务器连接密码(默认为空) spring.redis.password= # 连接池最大连接数(使用负值表示没有限制) spring.redis.jedis.po

  • 详解springboot中各个版本的redis配置问题

    今天在springboot中使用数据库,springboot版本为2.0.2.RELEASE,通过pom引入jar包,配置文件application.properties中的redis配置文件报错,提示例如deprecated configuration property 'spring.redis.pool.max-active',猜想应该是版本不对,发现springboot在1.4前后集成redis发生了一些变化.下面截图看下. 一.不同版本RedisProperties的区别 这是spri

  • Spring Boot中使用Swagger3.0.0版本构建RESTful APIs的方法

    目录 一.项目描述 二.简介 三.Swagger2.X和Swagger3.0.0 的对比 1)SpringFox 2.x 发布 2)SpringFox 3.0.0 发布 3)swagger3.0 与2.xx配置差异: 四.注解说明 @Api @ApiOperation @ApiImplicitParams @ApiImplicitParam @ApiResponses @ApiModel @ApiModelProperty @ApiIgnore 五.案例准备工作 0.项目目录 1.pom依赖 2

  • 解决Mysql 8.0.17 winx64版本安装过程中遇到的问题

    一.手动创建添加my.ini文件 # CLIENT SECTION # ---------------------------------------------------------------------- # # The following options will be read by MySQL client applications. # Note that only client applications shipped by MySQL are guaranteed # to

  • 详解Mybatis逆向工程中使用Mysql8.0版本驱动遇到的问题

    前言 今天在使用 8.0.12 版的 mysql 驱动时遇到了各种各样的坑,在使用 JDBC 连接上遇到的问题可以参考我的上一篇博客.我在使用 mybatis 逆向工程生成各种 mapper , pojo , dao 时,遇到了一个困惑我好几个小时的错误,这个错误是 Result Maps collection already contains value for BaseResultMap 产生这个错误可能有各种原因.但是这里我只说我的原因及解决过程. 初步探索 我在网上查阅了大量的博客文章,

  • 详细介绍MyBatis 3.4.0版本的功能

    新增功能 1. Cursor 新增返回值类型为游标的方法 当查询大量(上百万)数据的时候,使用游标可以有效的减少内存使用,不需要一次性将所有数据得到,可以通过游标逐个或者分批(逐个获取一批后)处理. SqlSession 中新增的 3 个游标方法: /** * A Cursor offers the same results as a List, except it fetches data lazily using an Iterator. * @param <T> the returned

随机推荐