欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

一个项目调用另一个项目的接口

程序员文章站 2023-02-02 15:19:20
故事是这样的,昨天有位大佬让我写一个给外部人员调用的api,但是那个项目发布又是内网的,所以让我接口写在一个项目里,而发布给别人用的项目是另一个,于是,就有了下面的故事。第一次接触,完全不懂第一步是打包,打包api所在的包就行了,这边配置的是jar,所以打包出的就是jar的形式我用的是idea里的maven里的 先clean、再compile、再package就好了,至于compil有什么用,忘记了第二步如果cmd能执行mvn命令的就可以用cmd直接执行我用的是idea自带的,点击maven里面...

故事是这样的,昨天有位大佬让我写一个给外部人员调用的api,但是那个项目发布又是内网的,所以让我接口写在一个项目里,而发布给别人用的项目是另一个,于是,就有了下面的故事。
第一次接触,完全不懂
第一步是打包,打包api所在的包就行了,这边配置的是jar,所以打包出的就是jar的形式
我用的是idea里的maven里的 先clean、再compile、再package就好了,至于compil有什么用,忘记了

第二步
如果cmd能执行mvn命令的就可以用cmd直接执行
我用的是idea自带的,点击maven里面的那个字母m
执行:

mvn install:install-file -DgroupId= 1 -DartifactId= 2 -Dversion=3 -Dpackaging=jar -Dfile= 4

替换值 : 1 == api所在的pom.xml里的groupId
2 == consultant_core_api (jar包的名字不带版本)
3 == 1.0.5 (jar的版本)
4 == E:\PlatformConsultant\consultant_core_api\target\consultant_core_api-1.0.5.jar(jar包的本地路径)

第三步
在需要用到的项目里引用这个jar包(如果只是本地用就可以了,如果不止,请把jar发布到远程maven仓库)
pom.xml中引用

 <dependency>
            <groupId>com.chlitina.cloud</groupId>
            <artifactId>consultant_core_api</artifactId>
            <version>1.0.5</version>
        </dependency>

然后可以在对应的项目maven中去查看,如果有,那么就可以愉快的使用了。实体类,bean这些都不需要打包的。

最后的最后提供一个上传jar包到远程maven仓库的链接,emm虽然我用的不是这个,但是我感觉这个应该有点用:jar包到远程maven仓库
第4步,
每个给别的项目调用 的每个api都需要配置

	<dubbo:service interface="com.chlitina.cloud.core.api.PlatformConsultantApi" ref="platformConsultantApi" timeout="10000" protocol="json" group="${dubbo_server_group}"></dubbo:service>

这是提供给别的项目使用要的配置:provider下的spring下的spring-provider.xml里

	<!-- 查询配置信息服务  -->
	<dubbo:reference id="platfromConfigService"
		interface="com.quwei.platform.backstage.service.api.PlatfromConfigService" check="false"
		timeout="10000" protocol="json" group="${dubbo.content.group}"/>

这是在调用别的项目api里要的配置:
vshop下的consumers下的_mall.xml里

本文地址:https://blog.csdn.net/Lijin_/article/details/107660438

相关标签: java spring