maven项目dubbo服务怎么打成tar包来部署

本文详细介绍了如何使用Maven进行项目打包的过程。首先,在src/main/下创建assembly文件夹,并在其中放置assembly.xml配置文件。然后,修改项目的pom文件以加入必要的插件配置,实现依赖项的解压及自定义的文件集和依赖集的整理。最后,通过deploy或install命令完成打包。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.在src/main/下创建assembly文件夹

2.新建assembly.xml文件,文件内容如下

<assembly>

	<id>assembly</id>
	
	<formats>
		<format>tar.gz</format>
	</formats>
	
	<includeBaseDirectory>true</includeBaseDirectory>
	
	<fileSets>
		<fileSet>
			<directory>${project.build.directory}/dubbo/META-INF/assembly/bin</directory>
			<outputDirectory>bin</outputDirectory>
			<fileMode>0755</fileMode>
		</fileSet>
		<fileSet>
			<directory>src/main/assembly/conf</directory>
			<outputDirectory>conf</outputDirectory>
			<fileMode>0644</fileMode>
		</fileSet>
	</fileSets>
	
	<dependencySets>
		<dependencySet>
			<outputDirectory>lib</outputDirectory>
		</dependencySet>
	</dependencySets>
	
</assembly>
3.在serve的pom文件中增加plugins

<build>
		<plugins>
			<plugin>
				<artifactId>maven-dependency-plugin</artifactId>
				<executions>
					<execution>
						<id>unpack</id>
						<phase>package</phase>
						<goals>
							<goal>unpack-dependencies</goal>
						</goals>
						<configuration>
							<groupId>com.alibaba</groupId>
							<artifactId>dubbo</artifactId>
							<outputDirectory>${project.build.directory}/dubbo</outputDirectory>
							<includes>META-INF/assembly/**</includes>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<artifactId>maven-assembly-plugin</artifactId>
				<configuration>
					<descriptor>src/main/assembly/assembly.xml</descriptor>
				</configuration>
				<executions>
					<execution>
						<id>make-assembly</id>
						<phase>package</phase>
						<goals>
							<goal>single</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>



4.执行deploy(如果没有远端的maven仓库)可以使用install命令来打包

5.去workspace对应的项目的\target目录下就可以找到打好的tar包

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值