zoukankan      html  css  js  c++  java
  • Maven: 自动远程部署

    1. 在settings.xml中的Servers节点中增加Server的登录信息:

    1   <server>
    2       <id>deploy_server_65</id>
    3       <username>username</username>
    4       <password>password</password>
    5   </server>

    2. 在pom中的build节点增加extensions内容:

    1         <extensions>
    2             <extension>
    3                 <groupId>org.apache.maven.wagon</groupId>
    4                 <artifactId>wagon-ssh</artifactId>
    5                 <version>2.10</version>
    6             </extension>
    7         </extensions>

    3. 在plugin中增加plug

     1             <plugin>
     2                 <groupId>org.codehaus.mojo</groupId>
     3                 <artifactId>wagon-maven-plugin</artifactId>
     4                 <version>1.0</version>
     5                 <configuration>
     6                     <serverId>deploy_server_65</serverId>
     7                     <commands>
     8                         <!-- 删除之前文件 -->
     9                         <command>rm -rf /var/lib/hadoop-hdfs/bigdata-stat-3.2.1.jar</command>
    10                     </commands>
    11                     <displayCommandOutputs>true</displayCommandOutputs>
    12                     <!-- 需要部署的文件 -->
    13                     <fromFile>target/bigdata-stat-3.2.1.jar</fromFile>
    14                     <!-- 部署目录 -->
    15                     <url>scp://root@10.1.108.65/var/lib/hadoop-hdfs</url>
    16                 </configuration>
    17             </plugin>


    4. 在命令行执行:
     mvn clean package wagon:sshexec wagon:upload-single 

    5. plug-in绑定生命周期方式
    但是这种方式还需要在命令行指定插件以及目标(goals),还可以将插件绑定到Maven的生命周期中,让其自动执行:

     1 <plugins>
     2             <plugin>
     3                 <groupId>org.codehaus.mojo</groupId>
     4                 <artifactId>wagon-maven-plugin</artifactId>
     5                 <version>1.0</version>
     6                 <executions>
     7                     <execution>
     8                         <id>upload-deploy</id>
     9                         <!-- 运行package打包的同时运行upload-single和sshexec -->
    10                         <phase>package</phase>
    11                         <goals>
    12                             <goal>sshexec</goal>
    13                             <goal>upload-single</goal>
    14                         </goals>
    15                         <configuration>
    16                             <serverId>deploy_server_65</serverId>
    17                             <!-- 需要部署的文件 -->
    18                             <fromFile>target/bigdata-stat-3.2.1.jar</fromFile>
    19                             <!-- 部署目录 -->
    20                             <url>scp://root@10.1.108.65/var/lib/hadoop-hdfs</url>
    21                             <commands>
    22                                 <!-- 删除之前文件 -->
    23                                 <command>rm -rf /var/lib/hadoop-hdfs/bigdata-stat-3.2.1.jar</command>
    24                             </commands>
    25                             <displayCommandOutputs>true</displayCommandOutputs>
    26                         </configuration>
    27                     </execution>
    28                 </executions>
    29             </plugin>
    30 </plugins>

      可以看到,增加了executors/executor节点,并在节点中通过phase节点了plugin执行的阶段以及<goals>节点指令了执行的目标。

  • 相关阅读:
    第六课 使用oflash软件烧写bin文件至开发板
    Linux查看、添加、修改PATH环境变量
    第七课 Linux裸机开发+SourceInsight3.5使用+notepad++使用
    第五课 Linux高级命令
    数组的方法总结
    浅谈 return false 和preventDefault stopPropagation stopImmediatePropagation 的正确用法
    实时统计输入的文字
    滚轮滚动事件
    window.onload和DOMReady
    JS获取浏览器可视区域的尺寸
  • 原文地址:https://www.cnblogs.com/xiashiwendao/p/7862571.html
Copyright © 2011-2022 走看看