pom.xml打包遇到的那些坑

博客主要围绕两个信息技术问题展开。一是pom.xml的project值动态替换问题,如配置文件分离打包后active值未替换,给出了解决方法;二是使用maven - assembly - plugin打压缩包时active值未替换,还给出了成功打包源文件的链接。

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

1.pom.xml的project值动态替换

案例:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <configuration>
        <delimiters>
            <delimiter>@</delimiter>
        </delimiters>
        <useDefaultDelimiters>false</useDefaultDelimiters>
    </configuration>
</plugin>

配置文件分离打包后: active: @spring.active@ 值没有替换

解决方法:

<!--拷贝资源文件 copy-resources -->
			<plugin>
				<artifactId>maven-resources-plugin</artifactId>
				<executions>
					<execution>
						<id>copy-resources</id>
						<phase>package</phase>
						<goals>
							<goal>copy-resources</goal>
						</goals>
						<configuration>
							<useDefaultDelimiters>false</useDefaultDelimiters>
							<delimiters>
								<delimiter>@</delimiter> <!-- 需要识别@来实现自动替换 -->
							</delimiters>

							<resources>
								<resource>
									<directory>src/main/resources</directory>
									<filtering>true</filtering>
									<includes>
										<include>**/*.xml</include>
										<include>**/*.yml</include>
									</includes>
								</resource>
							</resources>

							<resource>
								<directory>src/main/resources/</directory>
								<filtering>false</filtering>
								<excludes>
									<exclude>**/*.xml</exclude>
									<exclude>**/*.yml</exclude>
								</excludes>
							</resource>

							<nonFilteredFileExtensions>
								<nonFilteredFileExtension>woff</nonFilteredFileExtension>
								<nonFilteredFileExtension>woff2</nonFilteredFileExtension>
								<nonFilteredFileExtension>ttf</nonFilteredFileExtension>
							</nonFilteredFileExtensions>
							<outputDirectory>${project.build.directory}/resources</outputDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>

修改为如上代码,解决

2.使用 maven-assembly-plugin 打压缩包  active: @spring.active@ 值没有替换

		<fileSet>
			<directory>src/main/resources</directory>
			<outputDirectory>resources</outputDirectory>
			<filtered>true</filtered> <!-- filtered属性设置为true,可以将配置文件中的的变量替换为pom文件中的变量值 -->
		</fileSet>

成功打包源文件: https://mp.youkuaiyun.com/postedit/90520239

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值