`
hbxflihua
  • 浏览: 659625 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Spring-boot构建多模块依赖工程时,maven打包异常:程序包xxx不存在

阅读更多

项目

dw(父类工程,定义各模块,指定模块依赖jar版本)

|------------------------------

|--da-core    核心代码

|

|--da-manage  后台管理,依赖da-core

|

|--da-api     API接口,依赖da-api

|

|--da-demo    API接口DEMO

 

 

通过maven命令:mvn clean package -Dmaven.test.skip 进行打包编译报错,错误信息如下:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile (default-compile) on project dw-manage: Compilation failure: Compilation failure:

[ERROR] /xxx.java:[16,39] 程序包com.xx..xxx不存在

 

程序包是da-core工程的包,解压编译的jar文件发现该jar本打包成了spring-boot的可执行jar,这不是我想要的结果。

 

原有的da-core包中maven插件配置如下:

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

 

调整后如下:

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
					<classifier>exec</classifier>
				</configuration>
			</plugin>
		</plugins>
	</build>

 

spring-boot工程打包编译时,会生成两种jar包,一种是普通的jar,另一种是可执行jar。默认情况下,这两种jar的名称相同,在不做配置的情况下,普通的jar先生成,可执行jar后生成,所以可执行jar会覆盖普通的jar。

 

分享到:
评论
1 楼 changerzhuo_319 2019-07-04  
    谢谢大佬, 查了一天了没解决

相关推荐

Global site tag (gtag.js) - Google Analytics