zoukankan      html  css  js  c++  java
  • Maven打包插件Assembly(七)

    1. 在 dubbo 的 provider 项目(实现类项目dubbo-service-impl)中 pom.xml 配置 assembly插件信息

    <!-- 指定项目的打包插件信息 -->
    <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <configuration> <!-- 指定打包描述文件的位置:相对项目根目录 的路径 --> <!-- assembly 打包的描述文件 -->
            <descriptor>assembly/assembly.xml</descriptor>
        </configuration>
        <executions>
            <execution>
                <id>make-assembly</id>
                <!-- 绑定到package生命周期阶段 -->
                <phase>package</phase>
                <goals>
                    <!-- 只运行一次 -->
                    <goal>single</goal>
                </goals>
            </execution>
        </executions>
    </plugin>

    2. 在项目根目录下创建assembly 文件夹

    3. 在 assembly 文件夹中新建 assembly.xml

    <?xml version='1.0' encoding='UTF-8'?>
    <assembly
        xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd">
        <!-- 该字符会添加到最终tar.gz包的名称后面,作为后缀 -->
        <id>assembly</id>
        <!-- 指定打包的格式为tar.gz,该类型压缩包在linux中比较常见 -->
        <formats>
            <format>tar.gz</format>
        </formats>
        <!-- 在tar.gz压缩包中是否包含根文件夹,该根文件夹名称和tar.gz去掉id后缀一致 -->
        <includeBaseDirectory>true</includeBaseDirectory>
        <fileSets>
            <!-- 将项目根路径下assembly/bin路径中的内容打包到压缩包中的根目录下的bin目录中 -->
            <fileSet>
                <!-- 相对项目根路径的相对路径 -->
                <directory>assembly/bin</directory>
                <outputDirectory>bin</outputDirectory>
                <!-- 设置最终tar.gz中该文件夹下的权限,跟linux权限写法一致 -->
                <fileMode>0755</fileMode>
            </fileSet>
            <!-- 将项目根路径下assembly/conf路径中的内容打包到压缩包中的根目录下的conf目录中 -->
            <fileSet>
                <directory>assembly/conf</directory>
                <outputDirectory>conf</outputDirectory>
                <!-- 设置其linux权限 -->
                <fileMode>0644</fileMode>
            </fileSet>
        </fileSets>
        <!-- 将所有依赖的jar包打包到压缩包中的根目录下的lib目录中 -->
        <!-- 此lib目录中包含自己开发的项目jar包以及demo_service.jar,还有第三方的jar包 -->
        <dependencySets>
            <dependencySet>
                <outputDirectory>lib</outputDirectory>
            </dependencySet>
        </dependencySets>
    </assembly>

    3.  解压下载的 dubbo-monitor-simple-2.5.3-assembly.tar.gz 压缩包,把解压后的 bin 和 conf 粘贴到项目下 assembly 文件夹中。并清空 conf/dubbo.properties 中内容

    4. 右键项目--> maven install,在 target 下出现项目名-版本-assembly.tar.gz 压缩包

    5. 把压缩包复制到 window 或 linux 中

    • window 中使用 start.bat 启动,关闭命令窗口关闭服务
    • linux 中使用 start.sh 启动使用 stop.sh 关闭
  • 相关阅读:
    Leetcode NO.110 Balanced Binary Tree 平衡二叉树
    Leetcode NO.226 Invert Binary Tree 翻转二叉树
    Leetcode NO.215 Kth Largest Element In An Array 数组中的第K个最大元素
    根据特征的浏览器判断
    Cygwin在打开在当前目录
    【转帖】科学对待 健康养猫 打造快乐孕妇
    解决chrome浏览器安装扩展、应用程序一直处在“检查中”的问题
    对【SQL SERVER 分布式事务解决方案】的心得补充
    关于“点击这里继续访问您选择的百度XXX”
    VBA一例:如何保持文本框焦点
  • 原文地址:https://www.cnblogs.com/myitnews/p/11485333.html
Copyright © 2011-2022 走看看