问题重现:当需要使用fastdfs来完成文件的上传和下载时,需要在pom文件中引入相关依赖。我使用以下这个依赖时,网站已经被屏蔽了,无法拉取到该依赖,会一直爆红,依赖如下:

pom导入mysql pom导入网络依赖报红_java

所以建议使用以下的依赖:(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文件,则可以直接从第三步开始,文件如图:

pom导入mysql pom导入网络依赖报红_jar_02

1、先从GitHub上的fastdfs项目下载项目zip文件,可以随便放在一个文件夹中进行解压,打开src文件夹所在的位置

pom导入mysql pom导入网络依赖报红_jar_03

 2、在src文件夹所在的地址栏输入cmd,进入命令行输入命令mvn package,当提示构建成功后就会看见src的同级文件中出现了target文件夹

pom导入mysql pom导入网络依赖报红_jar文件_04

 

pom导入mysql pom导入网络依赖报红_java_05

 打开target文件就能看见fastdfs项目的jar文件:

pom导入mysql pom导入网络依赖报红_java_06

 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、执行之后,如果看见构建成功的提示,就可以在本地仓库中看见该依赖。

pom导入mysql pom导入网络依赖报红_pom导入mysql_07

pom导入mysql pom导入网络依赖报红_jar_08

 

5、重新编译器或直接刷新一下依赖,就可以引入依赖而且不报红。

pom导入mysql pom导入网络依赖报红_jar文件_09

 

补充:有很多博客在将jar安装到本地Maven库的那一步上,说输入命令mvn clean install来完成jar安装这一步,虽然可以提示构建成功,但是本地仓库不会做出任何改变。不知道是使用方式不对还场景不对,我运行命令后并没有相应的结果。