Skip to content
jinyu edited this page Apr 14, 2016 · 6 revisions

assembly是maven的一个打包插件,它可以构建一个包含脚本、配置文件以及所有运行时所依赖的元素的完整发布包.

1.复制scirpt目录下的assembly.xmlstartup.sh到自己工程的src/main/script目录(新建)下.

2.在项目pom.xml中的/bulid/plugins节点新增如下配置

<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-assembly-plugin</artifactId>
	<configuration>
		<descriptors>
			<descriptor>src/main/script/assembly.xml</descriptor>
		</descriptors>
		<finalName>weixin4j-server</finalName>
	</configuration>
	<executions>
		<execution>
			<id>make-assembly</id>
			<phase>package</phase>
			<goals>
				<goal>single</goal>
			</goals>
		</execution>
	</executions>
</plugin>

descriptor表示assembly文件的位置.

finalName表示打包(zip)后的文件名,需配合startup.sh中APP_HOME的值使用.

3.startup.sh中JAVA_HOME为java运行环境(jre|jdk)的安装根目录,如果与脚本中的值不一致,可使用软连接命令:ln -s /usr/local/java 实际的目录.

4.startup.sh中APP_HOME为服务的启动目录,相当于运行服务时的classpath目录.

5.修改startup.sh中APP_MAINCLASS为上述编写的带main方法的服务启动类的全限定名.

6.执行mvn package命令后在target目录下得到一个zip的压缩包,在7或者8中选择一种方式启动服务.

7.上传zip包到服务器,解压包到启动目录(APP_HOME)的上一级目录后运行startup.sh脚本.

sh startup.sh start

8.ant远程部署

复制deploy.xml到自己工程的根目录下.

Ant远程部署deploy.xml的正确执行需要jsch包的支持,下载jar包将其引入执行Ant命令时的classpath中.

正确填写zip.namehostpwdmain.dirsub.dir五个属性值.

右键 Run as -> Ant Build

Clone this wiki locally