?
? ? ? ? ? ? <plugin>
? ? ? ? ? ? ? ? <groupId>com.github.goldin</groupId>
? ? ? ? ? ? ? ? <artifactId>copy-maven-plugin</artifactId>
? ? ? ? ? ? ? ? <version>0.2.5</version>
? ? ? ? ? ? ? ? <executions>
? ? ? ? ? ? ? ? ? ? <execution>
? ? ? ? ? ? ? ? ? ? ? ? <id>deploy-archive</id>
? ? ? ? ? ? ? ? ? ? ? ? <phase>integration-test</phase>
? ? ? ? ? ? ? ? ? ? ? ? <goals>
? ? ? ? ? ? ? ? ? ? ? ? ? ? <goal>copy</goal>
? ? ? ? ? ? ? ? ? ? ? ? </goals>
? ? ? ? ? ? ? ? ? ? ? ? <configuration>
? ? ? ? ? ? ? ? ? ? ? ? ? ? <resources>
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? <resource>
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? <targetPath>scp://hadoop:pwd@ip:/opt/17173/soa/</targetPath>
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? <file>${project.build.directory}/${project.artifactId}-${project.parent.version}-assembly.zip</file>
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? </resource>
? ? ? ? ? ? ? ? ? ? ? ? ? ? </resources>
? ? ? ? ? ? ? ? ? ? ? ? </configuration>
? ? ? ? ? ? ? ? ? ? </execution>
? ? ? ? ? ? ? ? </executions>
? ? ? ? ? ? </plugin>
? ? ? ? ? ? <plugin>
? ? ? ? ? ? ? ? <groupId>com.github.goldin</groupId>
? ? ? ? ? ? ? ? <artifactId>sshexec-maven-plugin</artifactId>
? ? ? ? ? ? ? ? <version>0.2.5</version>
? ? ? ? ? ? ? ? <executions>
? ? ? ? ? ? ? ? ? ? <execution>
? ? ? ? ? ? ? ? ? ? ? ? <id>unpack-archive</id>
? ? ? ? ? ? ? ? ? ? ? ? <phase>integration-test</phase>
? ? ? ? ? ? ? ? ? ? ? ? <goals>
? ? ? ? ? ? ? ? ? ? ? ? ? ? <goal>sshexec</goal>
? ? ? ? ? ? ? ? ? ? ? ? </goals>
? ? ? ? ? ? ? ? ? ? ? ? <configuration>
? ? ? ? ? ? ? ? ? ? ? ? ? ? <location>scp://hadoop:pwd@ip?:/opt/17173/soa/</location>
? ? ? ? ? ? ? ? ? ? ? ? ? ? <commands>
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?<command>ls -al; ${project.artifactId}-${project.parent.version}/bin/stop.sh</command>
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?<command>rm -rf ${project.artifactId}-${project.parent.version}</command>
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?<command>unzip ${project.artifactId}-${project.parent.version}-assembly.zip</command>
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?<command>${project.artifactId}-${project.parent.version}/bin/start.sh</command>
? ? ? ? ? ? ? ? ? ? ? ? ? ? </commands>
? ? ? ? ? ? ? ? ? ? ? ? </configuration>
? ? ? ? ? ? ? ? ? ? </execution>
? ? ? ? ? ? ? ? </executions>
? ? ? ? ? ? </plugin> ? ? ? ? ??
command里面命令自己編寫,可以寫一行用;分開多個(gè)命令,也可以寫多個(gè)command
然后編寫一個(gè)
integration-test.bat
call mvn -X clean integration-test -DskipTests=true
就可以很容易實(shí)現(xiàn)自動(dòng)部署啦!