首页
碎碎念
东邻西舍
本站信息
前来吐槽
Search
1
openwrt系统上安装第三方插件
11,242 阅读
2
ubuntu下zerotier的基本使用教程
6,125 阅读
3
给小米R3G更换系统:从padavan刷成openwrt
2,510 阅读
4
为padavan安装SSL证书
1,389 阅读
5
openwrt无线中继功能:实现不插网线就能上网
1,377 阅读
学习点滴
Java
Web前端
Linux
踩坑实录
折腾搞机
关于建站
只言片语
登录
Search
标签搜索
Linux
建站
踩坑实录
Ubuntu
Java
MySQL
CSS
折腾搞机
HTML
SQL
MyBatis
Nginx
只言片语
树莓派
OpenWrt
路由器
SSL
Maven
Git
随笔
知识分子没文化
累计撰写
78
篇文章
累计收到
63
条评论
首页
栏目
学习点滴
Java
Web前端
Linux
踩坑实录
折腾搞机
关于建站
只言片语
页面
碎碎念
东邻西舍
本站信息
前来吐槽
搜索到
3
篇与
Maven
的结果
2021-09-30
【踩坑实录】mybatis项目报错:Establishing SSL connection without...property is set to false
[Meting] [Music server="netease" id="350755" type="song"/] [/Meting] 环境说明: 系统:Win10专业版 mysql 5.7 问题再现 操作数据库时,警告信息如下: WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification. 以上警告信息翻译一下就是: 警告:不建议在没有服务器身份验证的情况下建立 SSL 连接。 根据MySQL 5.5.45+、5.6.26+ 和 5.7.6+ 要求,如果未设置显式选项,则必须默认建立 SSL 连接。 为了符合不使用 SSL 的现有应用程序,verifyServerCertificate 属性设置为“false”。您需要通过设置 useSSL=false 来显式禁用 SSL,或者设置 useSSL=true 并为服务器证书验证提供信任库。 解决方法 最省事的方法是修改数据库连接信息,在链接之后加上“useSSL=false”,直接禁用SSL连接方式。 原来链接为: jdbc:mysql://localhost:3306/mybatis?setUnicode=true&characterEncoding=utf8 加上参数之后修改为: jdbc:mysql://localhost:3306/mybatis?setUnicode=true&characterEncoding=utf8&useSSL=false 如果将参数设置为“useSSL=true”,在IDEA数据库连接界面设置SSL证书,也可以消除警告:
2021年09月30日
478 阅读
0 评论
0 点赞
2021-06-18
在IDEA中配置Maven开发环境
[Meting] [Music server="netease" id="1842801269" type="song"/] [/Meting] 目录: 前言 1. 下载Maven安装文件 2.解压并配置环境变量 2.1、windows端 2.2、Linux端 3.设置IDEA 3.1 修改Maven全局配置文件 3.2 修改路径 3.3 导入Maven依赖 环境说明: 系统:win10专业版 deepin V20 IDE:IDEA 2020.3 java:jdk1.8 Maven:3.8.1 前言 Maven是一个构建自动化工具,主要用于Java项目,由Apache软件基金会托管,它以前是Jakarta项目的一部分。Maven还可用于构建和管理用 C#、Ruby、Scala 和其他语言编写的项目。 Maven解决了构建软件的两个方面:软件是如何构建的,以及它的依赖关系。与早期的工具(如Apache Ant)不同,它对构建过程使用约定,并且只需要写下异常。 XML 文件描述了正在构建的软件项目、它对其他外部模块和组件的依赖、构建顺序、目录和所需的插件。它带有预定义的目标,用于执行某些明确定义的任务,例如代码编译及其打包。 Maven从一个或多个存储库(例如Maven 2 Central Repository)动态下载Java库和Maven插件,并将它们存储在本地缓存中。下载工件的本地缓存也可以使用本地项目创建的工件进行更新。公共存储库也可以更新。 Maven官网:http://maven.apache.org/ 1. 下载Maven安装文件 Maven下载页面:http://maven.apache.org/download.cgi 进入下载页面,根据不同的系统选择前两个二进制文件之一下载就可以了。如果打算自行构建Maven,那就下载后面的源码文件。 2.解压并配置环境变量 部分参考资料:Maven – Installing Apache Maven 2.1、windows端 将下载下来的“.zip”压缩文件解压,这里以解压到“D:\Software”为例进行说明。 “计算机”图标上点击右键->属性->高级系统设置(win10 20H2需要在属性窗口的“相关设置”标签中才能找到高级系统设置),在高级系统设置窗口的右下角点击“环境变量”。 “环境变量”分为两种,一种是“用户变量”,这里面配置的环境变量只适用于当前计算机用户,另一种是“系统变量”,适用于这台计算机上的所有用户。具体设置成哪种环境变量看个人习惯。 添加如下两条环境变量,其中MAVEN_HOME的值是Maven文件的解压路径: 环境变量名称 环境变量值 MAVEN_HOME D:\Software\apache-maven-3.8.1 Path %MAVEN_HOME%\bin 其实第一个环境变量的名称并不是固定的,在其他的配置环境变量的教程中名称也可能不同。这个只是习惯而已,只要保证环境变量值没什么问题即可。 第二条Path也可以写成“D:\Software\apache-maven-3.8.1\bin”,这里引用了上条设置的MAVEN_HOME,表示的是Maven安装路径下的bin文件夹 全都添加完之后,两连“确定”完成环境变量的配置。 2.2、Linux端 Linux下也可以用以下命令下载安装包: wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.8.1/binaries/apache-maven-3.8.1-bin.tar.gz 下载下来的是一个后缀名为“.tar.gz”的压缩包。解压压缩包到/usr/下: sudo tar -xvf apache-maven-3.8.1-bin.tar.gz -C /usr/ # 当然解压目录不一定非得是/usr/,换成其他目录也可以,后面配置环境变量时目录就要修改 修改环境变量,编辑/etc/profile文件: sudo nano /etc/profile 在末尾加入以下环境变量,“/usr/apache-maven-3.8.1”是Maven安装文件所在的目录: export PATH=/usr/apache-maven-3.8.1/bin:$PATH 然后ctrl + o保存,ctrl + x退出,再输入以下命令使环境变量生效: source /etc/profile 至此就算配置好了环境变量。使用“mvn -v”命令检验是否配置成功,若无法识别命令,部分Linux环境下可能还需要重启一遍电脑才能生效。 3.设置IDEA 此处以Win10下的IDEA开发环境为例,Linux下相关操作都是一样的。 在cmd控制台窗口中输入以下命令查看Maven版本,检验是否配置成功: mvn -v 没有错误的话,输出结果是这样: 3.1 修改Maven全局配置文件 Maven有一个全局配置文件,里面是Maven的一些设置,该文件存放在Maven安装路径的conf文件夹中,修改的就是这个配置文件。关于这个文件的详解可以看这篇:Maven全局配置文件settings.xml详解 - 洪墨水 - 博客园 (cnblogs.com) Maven需要一个文件夹来存放从Maven仓库下载到本地的依赖包,为了减少对系统盘的空间占用,建议将这个文件夹设置到其他分区。找到配置文件里的settings标签,在标签里面加上: <!-- 中间的路径是本地Maven依赖包的存放路径 --> <localRepository>D:\programmeSoftware\MavenRepository</localRepository> Maven仓库在国外,在国内下载速度比较慢,所以还需要将镜像源更改为国内的镜像源。找到<mirrors>标签,往标签内加入阿里云的镜像源配置: <mirror> <id>nexus-aliyun</id> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror> 3.2 修改路径 首先在IDEA中新建一个Maven项目,步骤与新建普通Java项目类似,项目类型选择成Maven。 依次点击“File”->“settings”(或者快捷键Ctrl+Alt+s)打开设置界面,然后选择“Build,Execution,Deployment”->“Maven”,设置如下: “User settings file”是Maven全局配置文件的存放路径,“Local repository”是从Maven仓库下载到本地的依赖包的存放路径。设置完了之后点击右下角“Apply”。 需要注意的是,这个设置仅适用于现在打开的Maven项目,为了将这个更改应用到新建的Maven项目上,还需要再进行设置。依次点击“File”->“New Projects Settings”->“Settings for New Projects...”,同样选择“Build,Execution,Deployment”->“Maven”,进行与上面同样的设置即可。 3.3 导入Maven依赖 Maven仓库地址:Maven Repository: Search/Browse/Explore (mvnrepository.com) 项目里用到的依赖包都是从这个网站上找的,以Mybatis为例,说一下依赖包的导入方式。 在网站顶部的搜索栏中搜索“Mabatis” 选择第一项,然后会看到该软件有很多个不同的版本,版本可以随便选择,但是一般为了防止项目中出现与软件版本相关的这类“玄学问题”,还是选择后面使用人数多的一项吧 点击版本号即可进入该版本界面,复制下方“Maven”标签下的那一串<dependency>标签 然后打开项目根目录下的pom.xml文件,将内容粘贴至<dependencies>(这个是复数的dependency)标签内部,注意缩进。导入依赖的第一步,完成。 当然由于只是导入了配置,本地并没有相应的依赖包,所以会看到粘贴的配置中会有红线报错,碰到报错先别慌,看第二步。此时需要在IDEA中要重载一遍项目的Maven依赖配置。有这么几种方法: 在左侧文件目录中的项目名称上单击右键,依次选择“Maven”->“Reload project” 在IDEA窗口右侧列表找到“Maven”,并单击展开菜单,点击菜单左上角刷新重载按钮 在打开的pom.xml文件界面上单击右键(只有在pom.xml文件上单击右键才可以,其他文件单击右键选项中没有Maven),依次选择“Maven”->“Reload project” 不管使用哪一种方式,最后结果都是窗口右下角会出现一个进度条,开始往本地下载pom.xml文件中导入的依赖项。等待这个进度条走完,原来的报错也就消失了。 在以后修改或添加了Maven依赖以后,都可以用这几种方法重新载入项目的Maven依赖配置。
2021年06月18日
489 阅读
0 评论
0 点赞
2021-05-25
【踩坑实录】Maven项目报错:java.lang.ExceptionInInitializerError
[Meting] [Music server="netease" id="30621618" type="song"/] [/Meting] 环境说明: 系统:win10 专业版 开发环境:IDEA JDK版本:1.8 mysql:5.5 mybatis:3.5.3 Junit:5.7.0 问题再现: Maven项目运行时报错,控制台报错信息如下: java.lang.ExceptionInInitializerError at com.langp.dao.UserMapperTest.getUserList(UserMapperTest.java:26) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) ······ Caused by: org.apache.ibatis.exceptions.PersistenceException: ### Error building SqlSession. ### The error may exist in com/langp/dao/UserMapper.xml Process finished with exit code -1 错误原因: 程序在编译过程中找不到对应的配置文件就会报错,但是对应的配置文件却是的的确确存在于项目中的,可是在生成的测试结果target对应目录下找不到对应配置文件,这是因为Maven项目中默认资源配置目录是src/main/resource,而实际有些配置文件会放在src/main/java目录下,就会导致项目编译时导出不了这些配置文件。所以我们需要手动配置资源过滤,使src/main/java的”.properties“文件和”.xml“文件可被导出到测试结果的target文件夹中。 解决方法: 最简单的方式就是将对应的Mapper.xml文件复制到生成测试结果的target文件夹下对应的目录中,但是只要在Maven中执行一次clear操作,target文件夹就被清除了,下次编译时还要重新复制过去。所以还有种更简单的方法: 在Maven项目的配置文件”pom.xml“中添加如下过滤配置信息: <!-- 在build中配置resources,来防止资源导出失败的问题 --> <build> <resources> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>true</filtering> </resource> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>true</filtering> </resource> </resources> </build> 然后,在IDEA中右键依次选择”Maven“->”Reload project“,重新载入依次Maven配置信息即可。
2021年05月25日
616 阅读
0 评论
0 点赞