使用场景
自己的项目,好几个应用使用项目的后台管理系统进行管理,前端有小程序,有网站、有APP、甚至还有桌面端,分别为不同的应用,之前的做法是都写在一个项目里面,由于每个项目使用的认证策略都不一样,网站无需身份认证,小程序与后台管理系统的认证方式不同,需要在拦截器中进行区分。
使用的是springboot的技术栈,一开始想的是微服务,但是感觉自己的项目就是种类多,其实用户量都不大,应用与应用之间的关联性也不大,没有必要使用微服务,最近由于项目庞大了,想进行一定的拆分,所有项目的类在后台管理系统中都要,如果拆分开来,在其他项目中在写一遍,感觉不是很好,所以想法就是想后台管理项目作为其他项目的依赖,同时后台管理项目能够进行独立运行与打包。
idea 中实现项目依赖
这里的实现方法是,将需要依赖的项目先安装到本地,然后再再需要引入的项目中添加该依赖,需要注意的是需要依赖的项目,需要使用最原始的打包方式,而不是使用springboot自带的打包插件:
不能使用springboot项目自带的打包插件进行打包:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
而应当使用传统项目的maven打包:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source> <!--指明源码用的Jdk版本-->
<target>1.8</target> <!--指明打包后的Jdk版本-->
</configuration>
</plugin>
</plugins>
</build>
通过安装命令将该jar包安装到本地:
mvn clean install
在其他项目中引入该依赖:
<dependency>
<groupId>com.admin</groupId>
<artifactId>parent</artifactId>
<version>1.1.3-SNAPSHOT</version>
<scope>provided</scope>
</dependency>