Maven一些常用标签的理解

<properties> 标签 含义是属性,相当于定义了一个pom专用的字典在需要的地方调用就可以了,一个很常用的现象减少属性的

重复填写,比如你有两个依赖版本都是1.28,这时你就可以将1.28定义为一个properties在对应的地方引用就行了。

举个栗子:

<dependency>
 <groupId>org.springframework</groupId>
 <artifactId>spring-core</artifactId>
 <version>1.2.6</version>
</dependency>

<dependency>
 <groupId>org.springframework</groupId>
 <artifactId>spring-aop</artifactId>
 <version>1.2.6</version>
</dependency>

没定义properties之前的。


定义properties之后的。

<properties>
 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 <spring.version>1.2.6</spring.version>
 <developer.organization><![CDATA[xy公司]]></developer.organization>
</properties>

以上内容就改成了

<dependency>
 <groupId>org.springframework</groupId>
 <artifactId>spring-core</artifactId>
 <version>${spring.version}</version>
</dependency>

<dependency>
 <groupId>org.springframework</groupId>
 <artifactId>spring-aop</artifactId>
 <version>${spring.version}</version>

</dependency>


<profiles>标签:

配置不同环境选项,一般环境分为开发环境,测试环境,本地环境在mvn打包的是加上对应mvn clean install -P xxx 

<profiles>
        <profile>
            <id>local_dev</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <build.profile.id>local_dev</build.profile.id>
            </properties>
        </profile>
        <profile>
            <id>test_63</id>
            <properties>
                <build.profile.id>test_63</build.profile.id>
            </properties>
        </profile>
        <profile>
            <id>online</id>
            <properties>
                <build.profile.id>online</build.profile.id>
            </properties>
        </profile>

    </profiles>

<build>

<resource>
                <filtering>true</filtering>
                <directory>src/main/resources</directory>
                <includes>
                    <include>application-${build.profile.id}.yaml</include>
                    <include>application.yaml</include>
                </includes>

 </resource>

</build>

举个栗子

mvn clean install -P online  这个打包命令就意味着 online对应的被激活 <include>application-online.yaml</include> 打包是这里就会被打成这样的


<resource> 这个标签是指打包的时候会将源文件中的那些文件打包进去,那些文件不打包进去

举个栗子:

在很多时候需要将src/main/java 中的配置文件打包时候打包进去(比如我今天做的智能问答微服务分词一直解析不成功,后来发现原来是maven打包的时候没有将src/main/java 中的配置文件打包进去)

<resource>    
                <directory>src/main/java</directory>    
                <includes>    
                    <include>**/*.properties</include>    
                    <include>**/*.xml</include>    
                    <include>**/*.tld</include>
                    <include>**/*.dic</include>
                    <!--     
                    <include>**/*.cfg.xml</include>-->
                </includes>    
                <filtering>false</filtering>    

</resource>


<build> 标签就是 打包编译的时候用的

<plugins> 用来添加插件的


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值