问题重现:当需要使用fastdfs来完成文件的上传和下载时,需要在pom文件中引入相关依赖。我使用以下这个依赖时,网站已经被屏蔽了,无法拉取到该依赖,会一直爆红,依赖如下:
所以建议使用以下的依赖:(fastdfs-client-java)
<!-- FastDFS依赖 -->
<dependency>
<groupId>org.csource</groupId>
<artifactId>fastdfs-client-java</artifactId>
<version>1.29-SNAPSHOT</version>
</dependency>
但是直接在pom文件进行该依赖的引入会报红,也是无法直接拉取依赖的,需要自己进行下载项目或下载相应的jar文件,再将依赖安装到本地Maven库中就可以了,重启idea或清除缓存后就发现不再报红了。
解决方案:
如果直接获得了fastdfs的jar文件,则可以直接从第三步开始,文件如图:
1、先从GitHub上的fastdfs项目下载项目zip文件,可以随便放在一个文件夹中进行解压,打开src文件夹所在的位置:
2、在src文件夹所在的地址栏输入cmd,进入命令行输入命令mvn package,当提示构建成功后就会看见src的同级文件中出现了target文件夹:
打开target文件就能看见fastdfs项目的jar文件:
3、将jar文件安装到本地Maven仓库中。
先打开jar文件所在的文件夹,在地址栏输出cmd(或者直接在命令行中进入该文件夹),然后输入命令:
mvn install:install-file -DgroupId=org.csource -DartifactId=fastdfs-client-java -Dversion=1.29-SNAPSHOT -Dpackaging=jar -Dfile=fastdfs-client-java-1.29-SNAPSHOT.jar
其它jar要安装到本地的话,也可以使用该方式。上面命令的格式如下:
mvn install:install-file -DgroupId={输入groupId} -DartifactId={输入artifactId} -Dversion={输入版本号} -Dpackaging=jar -Dfile={输入jar包名称}
注意:字符要区分大小写,不然会报错。
4、执行之后,如果看见构建成功的提示,就可以在本地仓库中看见该依赖。
5、重新编译器或直接刷新一下依赖,就可以引入依赖而且不报红。
补充:有很多博客在将jar安装到本地Maven库的那一步上,说输入命令mvn clean install来完成jar安装这一步,虽然可以提示构建成功,但是本地仓库不会做出任何改变。不知道是使用方式不对还场景不对,我运行命令后并没有相应的结果。