zoukankan      html  css  js  c++  java
  • Spring-boot构建多模块依赖工程时,maven打包异常:程序包xxx不存在

    在qizhi项目改版的时候, 所有代码都迁移好了, 但是compile的时候报程序包*****不存在, 具体到某一个类就是: 找不到符号. 下面这篇文章是正解

    http://hbxflihua.iteye.com/blog/2431537

    具体内容如下:

    ===========================+===========================+===========================+

    项目

    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。

    ===========================+===========================+===========================+===========================+

  • 相关阅读:
    子网掩码的作用与IP网段的划分
    DHCP服务器
    Anaconda安装、更新第三方包
    time模块的使用
    TensorFlow安装
    机器学习-线性回归
    机器学习
    Pyhton-类(2)
    python-类(1)
    Python-函数
  • 原文地址:https://www.cnblogs.com/ITPower/p/10015471.html
Copyright © 2011-2022 走看看