zoukankan      html  css  js  c++  java
  • springcloud中maven打包问题

    一、springcloud中我们最常用的打包方式就是使用springboot的spring-boot-maven-plugin进行打包,但是这样存在一个问题,如下:

      

       问题1:打包错误:我们想要公有的打包方式,一般直接把spring-boot-maven-plugin放在最顶层的pom.xml文件中。这样会导致一个问题

      父pom.xml中加入

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

      

       这个问题导致的原因就是common中的打包问题,在common中是没有main的,但是我们通过springboot的maven插件打包就存在上图的问题。

      问题2:公共模块问题:问题1产生的主要原因还是common中引用了父pom.xml的依赖,加上本身没有main的问题导致打包一直报错。

    二、解决  

      1、我在网上找了很多教程都是在common中加入执行为exec的方式,或者通过配置main.class来实现。但是这种基本上没有太大的效果(个人实践,可能存在差异)。

      2、寻找问题:首先我们先找到问题,问题是由于顶层pom.xml加入了springboot的maven插件,意思就是下面的所有模块以springboot的maven插件的方式来进行打包的。这个是不合理的,在我们的common中只是用来做公共基础的一些工具或者基础开发的东西,这个根本不需要使用springboot的maven插件进行打包。那么思路来了放弃顶层的springboot的maven插件改成普通的编译方式不就行了。

      3、解决问题(最简单的方式)

      在顶层pom.xml中替换build为

        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                </plugin>
            </plugins>
        </build>

      在需要使用springboot的maven插件的项目中加入

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

      4、注意:此方式只适合点击顶层打包的方式,如果在具体的web中加入了common模块,那么打包还是存在问题,原理同第2点。

  • 相关阅读:
    关于Vuex的actions传入多个参数的方法:
    2019最新create-react-app创建的react中使用sass/scss,以及在react中使用sass/scss公共变量的方法
    vue中怎么使用vuex
    分享一个知乎答案 最详细易懂的 js闭包
    web前端 在react中使用移动端事件,学习笔记
    闭包
    原生ajax练习-post&xml
    Ajax中Get请求与Post请求的区别
    css文件编码
    template.js模板工具案例
  • 原文地址:https://www.cnblogs.com/ll409546297/p/12889636.html
Copyright © 2011-2022 走看看