首页 > 其他分享 >公共模块Common

公共模块Common

时间:2024-04-03 23:22:38浏览次数:29  
标签:xml plugin plugins maven Common 模块 公共 org resources

1.公共mapper.xml

  • 其他模块的配置
mybatis:
  mapper-locations:  classpath*:org/example/common/web/mappers/*.xml
  typeAliasesPackage: org.example.common.web.domain

# mybatis-plus相关配置
mybatis-plus:
  # xml扫描,多个目录用逗号或者分号分隔(告诉 Mapper 所对应的 XML 文件位置)
  mapper-locations: classpath:org/example/common/web/mappers/*.xml
  • 启动类
@MapperScan("org.example.common.web.dao")
  • pom.xml
    前面没有解决找不到xml可以尝试
<build>
    <!--        解决找不到mapper.xml的问题-->
    <resources>
        <resource>
            <directory>src/main/java</directory>
            <filtering>false</filtering>
            <includes>
                <include>**/mappers/*.xml</include>
            </includes>
        </resource>
    </resources>
</build>
## 2.打包配置
```xml
  <build>
      <!--最终打包的名字-->
      <finalName>${project.artifactId}</finalName>

      <resources>
          <resource>
              <directory>src/main/java</directory>
              <includes>
                  <include>**/*.xml</include>
              </includes>
          </resource>
          <resource>
              <directory>src/main/resources</directory>
          </resource>
      </resources>

      <plugins>
          <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-jar-plugin</artifactId>
              <version>3.1.1</version>
              <configuration>
                  <!--不打包的资源文件,在此处过滤。同时excludes修改为includes,利用maven-resources-plugin复制到target/resources目录下
                    bootstrap.yml/application.yml选择打进jar包,@spring.profiles.active@会自动替换,若外置则需要手动替换-->
                  <excludes>
                      <exclude>**/*.yml</exclude>
                      <exclude>lib/**</exclude>
                  </excludes>
                  <archive>
                      <!--jar中不包含pom.xml和pom.properties-->
                      <addMavenDescriptor>false</addMavenDescriptor>
                      <manifest>
                          <addClasspath>true</addClasspath>
                          <!--MANIFEST.MF 中 Class-Path 加入前缀-->
                          <classpathPrefix>lib/</classpathPrefix>
                          <!--jar包不包含唯一版本标识-->
                          <useUniqueVersions>false</useUniqueVersions>
                          <!--入口类-->
                          <mainClass>org.example.Comment</mainClass>
                      </manifest>
                      <manifestEntries>
                          <!--MANIFEST.MF 中 Class-Path 加入资源文件目录,
                         优先级:file:./config/ > file:./ > classpath:/config/ > classpath:/ > 自定义目录file:./resources/-->
                          <Class-Path>./resources/</Class-Path>
                      </manifestEntries>
                  </archive>
                  <outputDirectory>${project.build.directory}</outputDirectory>
              </configuration>
          </plugin>

          <!--将依赖包复制到target/lib目录下-->
          <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-dependency-plugin</artifactId>
              <version>3.1.1</version>
              <executions>
                  <execution>
                      <id>copy-dependencies</id>
                      <phase>package</phase>
                      <goals>
                          <goal>copy-dependencies</goal>
                      </goals>
                      <configuration>
                          <outputDirectory>${project.build.directory}/lib/</outputDirectory>
                      </configuration>
                  </execution>
              </executions>
          </plugin>

          <!--将resources目录下的文件复制到target/resources目录下-->
          <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-resources-plugin</artifactId>
              <version>3.1.0</version>
              <executions>
                  <execution>
                      <id>copy-resources</id>
                      <phase>package</phase>
                      <goals>
                          <goal>copy-resources</goal>
                      </goals>
                      <configuration>
                          <resources>
                              <resource>
                                  <directory>src/main/resources</directory>
                                  <includes>
                                      <include>**/*.yml</include>
                                  </includes>
                              </resource>
                          </resources>
                          <outputDirectory>${project.build.directory}/resources</outputDirectory>
                      </configuration>
                  </execution>
              </executions>
          </plugin>

          <!--spring boot repackage,依赖 maven-jar-plugin 打包的jar包 重新打包成 spring boot 的jar包-->
          <plugin>
              <groupId>org.springframework.boot</groupId>
              <artifactId>spring-boot-maven-plugin</artifactId>
              <version>2.2.5.RELEASE</version>
              <configuration>
                  <!--重写包含依赖,包含不存在的依赖,jar里没有pom里的依赖-->
                  <includes>
                      <include>
                          <groupId>null</groupId>
                          <artifactId>null</artifactId>
                      </include>
                  </includes>
                  <layout>ZIP</layout>
                  <!--使用外部配置文件,jar包里没有资源文件-->
                  <addResources>true</addResources>
                  <outputDirectory>${project.build.directory}</outputDirectory>
              </configuration>
              <executions>
                  <execution>
                      <goals>
                          <goal>repackage</goal>
                      </goals>
                  </execution>
              </executions>
          </plugin>

          <!--绑定到initialize生命周期,执行所有命令都会先进行清理-->
          <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-clean-plugin</artifactId>
              <version>3.1.0</version>
              <executions>
                  <execution>
                      <id>auto-clean</id>
                      <phase>initialize</phase>
                      <goals>
                          <goal>clean</goal>
                      </goals>
                  </execution>
              </executions>
          </plugin>

          <!--打包跳过测试-->
          <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-surefire-plugin</artifactId>
              <version>2.22.1</version>
              <configuration>
                  <skip>true</skip>
              </configuration>
          </plugin>

          <!--编译插件-->
          <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-compiler-plugin</artifactId>
              <version>3.6.1</version>
              <configuration>
                  <source>${java.version}</source>
                  <target>${java.version}</target>
                  <encoding>UTF-8</encoding>
              </configuration>
          </plugin>
      </plugins>
  </build>

标签:xml,plugin,plugins,maven,Common,模块,公共,org,resources
From: https://www.cnblogs.com/lwx11111/p/18113707

相关文章

  • 软测WebUI Python安装selenium模块失败,用VSCode安装成功
    Dos命令行下Python安装selenium模块失败,安了python,pip也好着呢,安装失败,网上没有查到类似报错。  报错还有一些,截图不全使用vsc安装selenium模块,成功了。  ......
  • Jenkins Pipeline 公共库
    在Git上创建一个代码仓库用来当作Pipeline公共库的存储代码结构src/var/*.groovygitee路径(部分配置做了模糊化,需要修改) xxxcxy/jenkins-pipeline-shared-libs(gitee.com)先看一下Jenkins执行结果 代码目录 在Jenkins上配置Pipeline公共库Manage......
  • Vue3+TypeScript项目(SKU管理模块)
    一、SKU模块静态页面src\views\product\sku\index.vue<template><el-card><el-tableborderstyle="margin:10px0px"><el-table-columntype="index"label="序号"width="80px"></el-table......
  • 上位机图像处理和嵌入式模块部署(qmacvisual图像清晰度)
    【 声明:版权所有,欢迎转载,请勿用于商业用途。联系信箱:[email protected]】    做过isp的同学都知道,图像处理里面有一个3A,即自动曝光、自动白平衡和自动对焦。其中自动对焦这个,就需要用输入的图像清晰度作为反馈,自动调整摄像头的焦距。这也是摄像头中唯一需要机械......
  • 上位机图像处理和嵌入式模块部署(qmacvisual亮度检测)
    【 声明:版权所有,欢迎转载,请勿用于商业用途。联系信箱:[email protected]】    前面我们说过,在机器视觉当中,对于光源的处理要非常小心。这里面不仅包括了选择什么样的光源,还取决于怎样使用这些光源。通常情况下,静止的场景,一般都是手工调节光源之后,不再修改;但是对......
  • DC电源模块的使用注意事项和安全规范
    BOSHIDADC电源模块的使用注意事项和安全规范DC电源模块在电子设备的设计和实验中起到了至关重要的作用。然而,为了确保安全和可靠性,使用DC电源模块时需要注意以下几个方面。 第一,正确选择适合的电源模块。在购买或选择电源模块时,需要考虑所需的电压和电流输出范围。确保电源......
  • js 模块化
    一、什么是模块化?1.1定义将一个复杂的程序依据一定的规则(规范)封装成几个块(文件),并进行组合在一起块的内部数据/实现是私有的,只是向外部暴露一些接口(方法)与外部其它模块通信 1.2模块化的进化过程 1.2.1全局function模式*全局函数模式:将不同的功能封装......
  • ImportError: DLL load failed while importing _cext: 找不到指定的模块
    网上搜索说,这个错误表明Python在尝试导入名为_cext的扩展模块时失败了,这通常是因为它依赖的某些动态链接库(DLL)文件无法被正确加载。这可能是因为相应的DLL文件不存在于预期的位置,或者系统缺少运行该DLL所必需的其他依赖项。在一个帖子中看到通过pipinstallmsvc-runtime可以即......
  • PyQt5 GUI编程(QMainWindow与QWidget模块结合使用)
    一.简介QWidget是所有用户界面对象的基类,而QMainWindow用于创建主应用程序窗口的类。它是QWidget的一个子类,提供了创建具有菜单栏、工具栏、状态栏等的主窗口所需的功能。上篇主要介绍了基本使用,创建窗口时都是继承单个模块,本章主要介绍下两个模块的结合使用。二.具体用法1.我......
  • import 模块导入
    ★方式一:fromxximportyy导入方式frominfoimportredis_store使用说明【理解】:相当于在本地定义一个变量redis_store指向info模块中redis_store的值,对本地的redis_stone直接进行赋值,只会修改本地变量redis_store的指向,并不会修改info模块中redis_store的值;这......