笔者因为写JUnit测试用例时用到了assertThat(MapObject, hasEntry("key","value"));
IDEA报错但根据提示仍不知道原因,后面才知道原来需要一个jar包--hamcrest-all.jar
从https://search.maven.org/search?q=g:org.hamcrest中下载了该包并将其移动到
.m2\repository\org\hamcrest目录下,然后从IDEA的Project Structure中添加了该包
一开始没添加依赖到pom.xml,直到要上传到GitHub并且在Travis CI进行在线build的时候,才添加依赖于pom.xml中,但出现了报错(因为之前问题解决了,所以现在hamcrest-all和它的version不报错了,这里拿hamcrest-library做实验),出现红字:
可以先在IDEA右侧的maven处点击reload:
如果字体不红的话问题就解决了,
但如果还不行的话,可能就要把jar包安装到本地仓库
当然前提是你需要安装和配置maven(教程挺多的)
安装配置后然后打开cmd,首先cd到你放置你新安装jar包的目录下,
然后输入:(这里拿hamcrest-all-1.3为例)
mvn install:install-file -DgroupId=org.hamcrest -DartifactId=hamcrest-all -Dversion=1.3 -Dpackaging=jar -Dfile=hamcrest-all-1.3.jar
其中-DgroupId、-DartifactId、-Dversion均可以在依赖中看到,
(能查看添加依赖的网站:https://mvnrepository.com)
-Dpackaging为包的类型,即jar
-Dfile是当时新添加的包的名字。
输完命令后回车,然后若提示BUILD SUCCESS,则jar包安装到本地仓库成功。
成功后回到IDEA下再次reload。