支持顶层Pom设定全局变量

111 阅读1分钟

添加支持

    <build>
          ...
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
        </resources>
    </build>

添加变量

<profiles>
        <profile>
            <id>loc</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <profiles.active>dev</profiles.active>
                <server.port>8080</server.port>
                <sql.host>192.168.10.101:3306</sql.host>
                <sql.username>root</sql.username>
                <sql.password>Hy@123456</sql.password>
                <redis.host>192.168.10.101</redis.host>
                <redis.port>6379</redis.port>
                <redis.password></redis.password>
            </properties>
        </profile>
        <profile>
            <id>pro</id>
            <properties>
                <profiles.active>pro</profiles.active>
                <server.port>9010</server.port>
                <sql.host>192.168.1.62:9901</sql.host>
                <sql.username>root</sql.username>
                <sql.password>123456@qq.com</sql.password>
                <redis.host>192.168.1.172</redis.host>
                <redis.port>6378</redis.port>
                <redis.password>dz123456@qq.com</redis.password>
            </properties>
        </profile>
    </profiles>

使用变量

其中 profile > id ,对应这里:

image.png

yaml 文件中,使用 @redis.host@ 引用。

Settings参考

<?xml version="1.0" encoding="UTF-8"?>
<settings
    xmlns="http://maven.apache.org/SETTINGS/1.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
    <localRepository>E:\mvn_libs</localRepository>
    <proxies></proxies>
    <servers>
        <server>
            <id>jndc_central</id>
            <username>admin</username>
            <password>$admin123</password>
        </server>
        <server>
            <id>jndc_public</id>
            <username>admin</username>
            <password>$admin123</password>
        </server>
        <server>
            <id>jndc_snapshots</id>
            <username>admin</username>
            <password>$admin123</password>
        </server>
        <server>
            <id>jndc_releases</id>
            <username>admin</username>
            <password>$admin123</password>
        </server>
    </servers>
    <mirrors>
        <mirror>
            <id>jndc_central</id>
            <name>jndc_central</name>
            <url>http://192.168.88.99:8081/repository/maven-jndc-central/</url>
            <mirrorOf>central</mirrorOf>
        </mirror>

    <mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>
    </mirror>

    </mirrors>
    <distributionManagement>
        <repository>
            <id>jndc_releases</id>
            <name>jndc_releases</name>
            <url>http://192.168.88.99:8081/repository/maven-jndc-releases/</url>
        </repository>
        <repository>
            <id>jndc_snapshots</id>
            <name>jndc_snapshots</name>
            <url>http://192.168.88.99:8081/repository/maven-jndc-snapshots/</url>
        </repository>
    </distributionManagement>
    <profiles>
        <profile>
            <id>pub_profile</id>
            <repositories>
                <repository>
                    <id>jndc_public</id>
                    <name>jndc_public</name>
                    <url>http://192.168.88.99:8081/repository/maven-jndc-public/</url>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                </repository>
            </repositories>
            <activation>
                <!-- 设置默认激活这个配置 -->
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
    </profiles>
</settings>