簡體   English   中英

Spring Boot Maven插件:從最終的jar中排除屬性文件

[英]Spring Boot Maven Plugin: Exclude properties file from final jar

我們有一個Spring Boot應用程序,其中有application.propertiesapplication-dev.properties 應用程序屬性文件僅具有一些全面的默認值,而application-dev屬性中具有一些真正的基礎憑證。

部署jar時,應用程序從部署環境中獲取其屬性,因此,除非要針對'dev'環境進行本地開發,否則我們不會利用配置文件功能。

我們的思科普斯科普斯部門告訴我們,他們不再希望我們從部署到生產中的最終jar中包含該dev屬性文件,但是他們可以將文件留在版本控制中,以便我們至少可以跟蹤更改和構建/在本地運行。

我一直在閱讀spring-boot-maven-plugin配置,但看不到一種方法可以告訴maven在構建最終jar時將文件排除在外,同時仍將其復制到target目錄中,因此我們的團隊仍然可以在本地進行黑客入侵。

我把配置文件弄亂了一些,但是我發現它太混亂了,無法向其他人解釋,並且隨着場景的其他排列的出現變得有點麻煩。

最終,最簡單的事情是配置jar插件以排除該文件。 這是我們pom的片段。

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>3.1.1</version>
            <configuration>
                <excludes>
                    <!-- This is where the exclusion occurs -->
                    <exclude>**/application-*.properties</exclude>
                </excludes>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM