排除基于maven配置文件的嵌入式服务器

问题描述 投票:0回答:1

我在pom.xml中定义了两个不同的配置文件(dev和prod)。我不希望在使用prod配置文件构建项目时包括嵌入式服务器。我知道即使不从jar中排除嵌入式服务器,也可以将其部署在其他服务器上。

我已经使用下面的代码片段检查了两个如何排除tomcat:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <exclusions>
        <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
        </exclusion>
    </exclusions>
</dependency>

我无法根据所选个人资料确定如何排除它。以下是我的POM.xml的构建和配置文件属性。请指导。

<build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <includes>
                    <include>application.properties</include>
                    <include>application-${profileName}.properties</include>
                    <include>*.xml</include>
                </includes>
            </resource>
        </resources>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
</build>
<profiles>
        <profile>
            <id>dev</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <profileName>dev</profileName>
            </properties>
        </profile>
        <profile>
            <id>prod</id>
            <properties>
                <profileName>prod</profileName>
            </properties>
        </profile>
</profiles>

提前感谢。

java spring-boot maven pom.xml embedded-tomcat
1个回答
0
投票

尝试在您的配置文件中使用依赖项标记,仅包括您要用于该配置文件的依赖项。

<profiles>
    <profile>
        <id>dev</id>
        <dependencies>
            // do stuff
        </dependencies>
    </profile>
</profiles>
© www.soinside.com 2019 - 2024. All rights reserved.