Maven工程添加非中央仓库管理的依赖jar包

 

问题背景:打包maven工程成war包提示缺少httpInvoker类,这个类就是iovp_apilink.jar中的一个类。

问题原因:初步猜想是因为这个包是用友u8c调用api时用的,没有在maven中央仓库管理找不到对应的依赖dependcy。

解决方案:1、iovp_apilink.jar包安装到本地仓库,2、通过依赖标签dependcy在pom.xml中引用iovp.apilink.jar即可。

解决了一天,试了网上各种方法也没成功的一个问题再次记录一下,如果能帮到你的话那最好。。。

必读:首先唠叨几句,这篇不能称为文章的xxx【我也不知道该叫啥】,暂且叫它日志因为它只能给你带来一点解决这一问题的思路。这篇日志重点说的是解决maven工程添加外部依赖包问题【也就是maven中央仓库搜不到的依赖,比如用友的iovp_apilink.jar用来调用u8c接口用的一个包】。

 

安装iovp_apilink.jar到本地仓库:

mvn install:install-file -Dfile=E:iovp_apilink.jar -DgroupId=com.hzya.external.apil
ink -DartifactId=iovp_apilink -Dversion=1.0.0 -Dpackaging=jar

cmd中输入mvn如果提示不是可运行命令是因为没有配置maven_home环境变量【这个自行百度配置吧,很多教程】。

配置完了maven环境变量后cmd输入mvn -v  可查看maven版本,我的maven是3.6.1

配完maven环境变量执行上述脚本安装iovp_apilink.jar:

Maven工程添加非中央仓库管理的依赖jar包_第1张图片

注意:这时如果你更新了pom.xml文件,那么你的仓库包iovp_apilink.jar文件夹下可能会多个lastUpdate为后缀的文件

文件解释:

Maven工程添加非中央仓库管理的依赖jar包_第2张图片

这个文件删掉即可。

 

1、先是在idea的project Structure 里配置Module【添加外部依赖iovp_apilink.jar包,我的jar包放在了工程WEB-INF/lib下】

Maven工程添加非中央仓库管理的依赖jar包_第3张图片

2、配置Libraries【添加外部jar包iovp_apilink.jar】

Maven工程添加非中央仓库管理的依赖jar包_第4张图片

3、配置Artifacts【选中war:exploded包,选中右边iovp_apilink.jar包右键put into lib添加外部包到WEB-INF/lib下即可】

Maven工程添加非中央仓库管理的依赖jar包_第5张图片

4、配置pom.xml文件【添加plugin,修改file、groupId、artifactId、version四个标签的值】

这个配置的参考地址:https://blog.csdn.net/txp1993/article/details/78889804

                
                    org.apache.maven.plugins
                    maven-install-plugin
                    
                        
                            install-external
                            clean
                            
                                iovp_apilink.jar包绝对路径
                                default
                                com.hzya.external.apilink
                                iovp_apilink
                                1.0.0
                                jar
                                true
                            
                            
                                install-file
                            
                        
                    
                

5、pom.xml文件添加iovp_apilink.jar依赖【这里的三个标签值对应上面plugin这三个标签的值】

        
        
            com.hzya.external.apilink
            iovp_apilink
            1.0.0
        

6、这样一通配置后我这边maven里的iovp_apilink.jar还是标红【现在是已经改过了没标红】,提示unresolved dependency不能解析依赖

Maven工程添加非中央仓库管理的依赖jar包_第6张图片

7、接着clean一下 maven工程,重启idea,注释第4步配置的plugin标签第6步依赖就不标红了。哈哈哈【说实话我也不知道具体原因,反正是就这样好了,哪位如果知道原因的话麻烦评论告知一下,感谢。】

 

 

你可能感兴趣的:(maven)