SpringBoot默认
打包是可执行的
jar包,其他
模块无法引用,原因:
spring-boot工程
打包编译时,会生成两种
jar包,一种是普通的
jar,另一种是可执行
jar。默认情况下,这两种
jar的名称相同,在不做配置的情况下,普通的
jar先生成,可执行
jar后生成,所以可执行
jar会覆盖普通的
jar。
在plugin配置spring-boot-
maven-plugin中增加如下配置,这样可以打可执行
jar包和普通
jar包:
<build>
<plugins>
在打包install公共模块的时候,打包失败,会出现报错信息。报错:Unable to find main class
原因:在maven编译这个工程模块的时候,尝试去模块下找main方法的class文件,但是我这个是一个公共服务模块,不需要启动项目,索引不需要main方法文件。
解决:在该工程模块的pom.xml中,添加下面的配置进行过滤即可即可。
添加后,再install就成功了:
添加后,再install就成功了,:
1. 打开
项目中的pom.xml文件。
2. 在文件中
找到<dependencies>标签,该标签用于管理
项目的
依赖。
3. 在<dependencies>标签中,添加一个<dependency>标签,用于引入其他
模块的
依赖。
4. 在<dependency>标签中,填写要引入的
模块的
Maven坐标信息,包括groupId、artifactId和version等。
例如:要引入Spring Web
模块,可以添加以下代码:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.5.1</version>
</dependency>
这样就会在
项目中引入Spring Web
模块的相关
依赖。
5. 保存pom.xml文件,
Maven会自动下载并引入所需的
依赖。
需要注意的是,如果被引入的
模块也是一个Spring Boot
项目,且在同一个工程中,可以在pom.xml中使用<modules>标签声明
模块之间的关系,并指定
模块的相对路径。这样,在执行
Maven构建时,会自动构建并引入这些
模块。
另外,如果要引入的
模块不在
Maven中央仓库中,可以在pom.xml中配置其他的仓库地址,以便
Maven能够下载到这些
模块的
依赖。
通过以上步骤,我们就可以在Spring Boot
项目中引入其他
模块的
Maven依赖。这样可以帮助我们通过直接引入现有的
模块来简化开发工作,并提高
项目的可维护性和可扩展性。