抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >
  • 自定义的starter是不能有启动入口的!即:只能作为工具类!类似jdk!

  • 不要把自定义的pom写成了一个可启动的项目哈!

  • 不然install后是引用不到自定义的starter里面的类的!!!

  • 可对比install后的web项目 和 install后的工具类pom , 生成的jar文件的目录结构是不同的哈!!!

1、工具类pom的jar包结构:

img

img

2、 一个完整的web项目的jar包结构:

img

img

情景再现:

自定义了一个starter,在idea中 mvn clean package install 安装到了本地仓库,然后在其他项目中引入starter依赖坐标。

img

问题:里面的类无法使用。下图为引入后的依赖jar。

img

注意:BOOT-INF导致了下面的包找不到。正确的依赖jar应该如下图所示:

img

如何解决:

在自定义的starter项目的pom文件中的maven插件里面设置configuration标签如下即可。

1
2
3
4
5
6
7
8
9
10
11
12
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<!--安装到仓库后,引用时不出现 BOOT-INF文件夹(会导致找不到相关类)-->
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>

评论