Dependency check 通过Maven构建时,配置Mysql数据库遇到的三个坑

news2025/4/8 17:16:05

使用过Dependency check的同学,一定会遇到这个问题—— 每次执行依赖扫描时,由于网络问题会导致NVD下载种子数据的过程中的种种失败,不仅浪费了大量时间,还会因为下载文件的不完整性直接导致依赖检测的失败。所以我在使用Dependencycheck时都是通过Mysql数据库存储nvd数据,在实际工作中非常的有帮助!如果大家想了解具体的相关内容可以参考文章:

Dependency check配置Mysql数据库存储nvd数据_dependency-check9.0.10 nvd update failed: attempte-CSDN博客

之前公司都是通过Dependency check命令行的方式进行组件依赖安全检查,最近有了新的需求:需要在maven构建时运行Dependency check,于是我进行了相关技术调研,在调研过程中遇到了三个问题,在这里分享给大家,避免大家踩坑!

JDK 和Maven

       dependency-check 11.0.0 or higher

  • Java: java -version 11.0
  • Maven: mvn -version 3.5.0 and higher

运行命令

dependency-check-maven插件可以使用mvn verify或在报告示例mvn site中执行。

使用mvn verify即可,或者直接运行插件

mvn org.owasp:dependency-check-maven:check

关于maven中pom.xml的配置大家可以参考下图,

如果想了解更详细的pom.xml信息,大家可以参考文章:

想通过maven 运行dependency-check的小伙伴必看!详解dependency-check-maven 插件的高效参数配置-CSDN博客

问题1   数据库版本与Dependencycheck 版本不匹配

DatabaseException: Unable to connect to the dependency-check database
[ERROR]                 caused by DatabaseException: Database schema does not match this version of dependency-check
[ERROR]                 caused by DatabaseException: Database schema is out of date

解决方案:

把dependency-check-maven 从最新版本降低到7.1.1(受限于mysql数据库的版本)

Mysql数据库 5.6.39

mysql-connector-java-8.0.28.jar

问题2 没有找到jdbc driver

 DatabaseException: Unable to connect to the dependency-check database
[ERROR]                 caused by DatabaseException: Unable to connect to the database
[ERROR]                 caused by SQLException: No suitable driver found for jdbc:mysql://ip:3306/dependencycheck

解决方案:

在maven的pom.xml中设置Mysql数据库的driver路径

 <databaseDriverPath>E:\driver</databaseDriverPath>

问题3.没有设置databaseDriverName

DatabaseException: Unable to connect to the dependency-check database
[ERROR]                 caused by DatabaseException: Unable to load database driver
[ERROR]                 caused by DriverLoadException: Unable to load database driver 'org.h2.Driver'
[ERROR]                 caused by ClassNotFoundException: org.h2.Driver

解决方案:

在maven的pom.xml中设置databaseDriverName

 <databaseDriverName>com.mysql.cj.jdbc.Driver</databaseDriverName>

我的每一篇文章都希望帮助读者解决实际工作中遇到的问题!如果文章帮到了您,劳烦点赞、收藏、转发!您的鼓励是我不断更新文章最大的动力!


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2273958.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

uniApp通过xgplayer(西瓜播放器)接入视频实时监控

&#x1f680; 个人简介&#xff1a;某大型国企资深软件开发工程师&#xff0c;信息系统项目管理师、CSDN优质创作者、阿里云专家博主&#xff0c;华为云云享专家&#xff0c;分享前端后端相关技术与工作常见问题~ &#x1f49f; 作 者&#xff1a;码喽的自我修养&#x1f9…

【OJ刷题】同向双指针问题

这里是阿川的博客&#xff0c;祝您变得更强 ✨ 个人主页&#xff1a;在线OJ的阿川 &#x1f496;文章专栏&#xff1a;OJ刷题入门到进阶 &#x1f30f;代码仓库&#xff1a; 写在开头 现在您看到的是我的结论或想法&#xff0c;但在这背后凝结了大量的思考、经验和讨论 目录 1…

Ubuntu中使用miniconda安装R和R包devtools

安装devtools环境包 sudo apt-get install gfortran -y sudo apt-get install build-essential -y sudo apt-get install libxt-dev -y sudo apt-get install libcurl4-openssl-dev -y sudo apt-get install libxml2.6-dev -y sudo apt-get install libssl-dev -y sudo apt-g…

《分布式光纤测温:解锁楼宇安全的 “高精度密码”》

在楼宇建筑中&#xff0c;因其内部空间庞大&#xff0c;各类电器设施众多&#xff0c;如何以一种既高效又稳定&#xff0c;兼具低成本与高覆盖特性的方式&#xff0c;为那些关键线路节点开展温度监测&#xff0c;是目前在安全监测领域一项重点研究项目&#xff0c;而无锡布里渊…

git撤回提交、删除远端某版本、合并指定版本的更改

撤回提交 vscode的举例 一、只提交了还未推送的情况下 1.撤回最后一次提交&#xff0c;把最后一次提交的更改放到暂存区 git reset --soft HEAD~12.撤回最后一次提交&#xff0c;把最后一次提交的更改放到工作区 git reset --mixed HEAD~13.撤回最后一次提交&#xff0c;不…

【Spring Boot】Spring AOP 快速上手指南:开启面向切面编程新旅程

前言 &#x1f31f;&#x1f31f;本期讲解关于spring aop的入门介绍~~~ &#x1f308;感兴趣的小伙伴看一看小编主页&#xff1a;GGBondlctrl-CSDN博客 &#x1f525; 你的点赞就是小编不断更新的最大动力 &#x1f386;那么废话不…

开源CMS建站系统的安全优势有哪些?

近年来&#xff0c;用户们用开源CMS系统搭建网站的比例也越来越高&#xff0c;它为用户提供了便捷的网站建设解决方案。其中&#xff0c;亿坊CMS建站系统更因安全方面备受用户欢迎&#xff0c;下面带大家一起全面地了解一下。 一、什么是开源CMS&#xff1f; 开源CMS指的是那…

基于单片机的客车载客状况自动检测系统(论文+源码)

1系统整体设计 本课题为客车载客状况自动检测系统&#xff0c;在此以STM32单片机为核心控制器&#xff0c;结合压力传感器、红外传感器、蜂鸣器、语音提示模块、继电器、液晶等构成整个客车载客状况自动检测系统&#xff0c;整个系统架构如图2.1所示&#xff0c;在此通过两个红…

CDP集成Hudi实战-Hive

[〇]关于本文 本文测试一下使用Hive和Hudi的集成 软件版本Hudi1.0.0Hadoop Version3.1.1.7.3.1.0-197Hive Version3.1.3000.7.3.1.0-197Spark Version3.4.1.7.3.1.0-197CDP7.3.1 [一]部署Jar包 1-部署hudi-hive-sync-bundle-1.0.0.jar文件 [rootcdp73-1 ~]# for i in $(se…

网络安全 基础入门-概念名词

域名相关 域名 域名和IP地址相互映射&#xff0c;这样不用去记住能够被机器直接读取的IP地址数串 域名系统(DNS) 它作为将域名和IP地址相互映射的一个分布式数据库&#xff0c;能够使人更方便地访问互联网。DNS使用UDP端口53。 1. 如果是自动获取dns,就向上查询&#xff…

Rust语言使用iced实现简单GUI页面

使用cargo新建一个rust项目 cargo new gui_demo cd gui_demo 编辑Cargo.toml文件 ,添加iced依赖 [package] name "gui_demo" version "0.1.0" edition "2021"[dependencies] iced "0.4.2" 编辑src/main.rs文件&#xff1a; u…

深度学习领域创新黑马!频域特征融合新突破

最近&#xff0c;FreqFusion引起了广泛关注&#xff0c;这是一种创新的频率感知特征融合方法&#xff0c;可以提升数据处理的准确性和效率&#xff0c;尤其在语义分割、目标检测、实例分割和全景分割等任务中表现卓越。 通过结合频域分析与特征融合技术&#xff0c;FreqFusion…

毕业项目推荐:基于yolov8/yolov5的草莓病害检测识别系统(python+卷积神经网络)

文章目录 概要一、整体资源介绍技术要点功能展示&#xff1a;功能1 支持单张图片识别功能2 支持遍历文件夹识别功能3 支持识别视频文件功能4 支持摄像头识别功能5 支持结果文件导出&#xff08;xls格式&#xff09;功能6 支持切换检测到的目标查看 二、数据集三、算法介绍1. YO…

鸿蒙开发(29)弹性布局 (Flex)

概述 弹性布局&#xff08;Flex&#xff09;提供更加有效的方式对容器中的子元素进行排列、对齐和分配剩余空间。常用于页面头部导航栏的均匀分布、页面框架的搭建、多行数据的排列等。 容器默认存在主轴与交叉轴&#xff0c;子元素默认沿主轴排列&#xff0c;子元素在主轴方…

“深入浅出”系列之C++:(3)网络编程

通过网络编程实现基于网络的应用程序&#xff0c;实现计算机之间的通信和数据交换。 套接字(Socket)&#xff1a;套接字是网络编程中用于通信的一种抽象概念。在C中使用<sys/socket.h>头文件中定义的套接字函数来创建和操作套接字。目的是开发采用套接字通信的C/S网络应用…

高等数学学习笔记 ☞ 一元函数微分的基础知识

1. 微分的定义 &#xff08;1&#xff09;定义&#xff1a;设函数在点的某领域内有定义&#xff0c;取附近的点&#xff0c;对应的函数值分别为和&#xff0c; 令&#xff0c;若可以表示成&#xff0c;则称函数在点是可微的。 【 若函数在点是可微的&#xff0c;则可以表达为】…

家用万兆网络实践:紧凑型家用服务器静音化改造(二)

大家好&#xff0c;这篇文章我们继续分享家里网络设备的万兆升级和静音改造经验&#xff0c;希望对有类似需求的朋友有所帮助。 写在前面 在上一篇《家用网络升级实践&#xff1a;低成本实现局部万兆&#xff08;一&#xff09;》中&#xff0c;我们留下了一些待解决的问题。…

[控制理论]—带死区的PID控制算法及仿真

带死区的PID控制算法及仿真 1.基本概念 在计算机控制系统重&#xff0c;某些系统为了避免控制作用过于频繁&#xff0c;消除由于频繁动作所引起的振荡&#xff0c;可采用带死区的PID控制算法&#xff1a; err(k) 为位置跟踪偏差&#xff0c;err0为可调参数&#xff0c;其具体…

(概率论)无偏估计

参考文章&#xff1a;(15 封私信 / 51 条消息) 什么是无偏估计&#xff1f; - 知乎 (zhihu.com) 首先&#xff0c;第一个回答中&#xff0c;马同学图解数学讲解得很形象&#xff0c; 我的概括是&#xff1a;“注意&#xff0c;有一个总体的均值u。然后&#xff0c;如果抽样n个&…

Visio 画阀门 符号 : 电动阀的画法

本篇文章介绍阀门&#xff0c;很多朋友在利用Visio绘画管道流程简图时&#xff0c;需要进行阀门符号的绘画&#xff0c;而Visio提供的阀门符号种类并不是很齐全。 本篇文章给出电动阀的画法&#xff1a; 下图是液动阀的符号&#xff1a; 首先&#xff0c;找到“更多形状”中的…