我们有一个Spring Boot应用程序,其中有一个应用程序。属性和应用程序开发属性。应用程序属性文件只有一些全面的默认值,而应用程序开发人员属性中有一些真正基本的凭据。
当我们部署jar时,应用程序从其部署到的环境中获取其属性,因此,我们不使用概要文件功能,除非我们希望针对“dev”环境进行本地开发。
我们的secops部门告诉我们,他们不再希望我们将部署到生产环境的最终jar中的开发属性文件包括在内,但他们同意我们将该文件保留在版本控制中,以便我们至少可以跟踪更改并在本地构建/运行。
我一直在阅读spring-boot-maven-plugin配置,我看不到一种方法来告诉maven在构建最终jar时排除该文件,同时仍将其复制到
目标
目录中,因此我们的团队仍然可以在本地进行黑客攻击。
我在配置文件上乱搞了一会儿,但我发现它太混乱了,无法向其他人解释,并且随着场景的额外排列而变得有点麻烦。
最终最简单的事情是配置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>
那么如何防止插件jar进入war文件呢?多谢了。
问题内容: 我已经创建了下面的对象,该对象将被映射到ElasticSearch类型。我想从索引中排除该属性: 问题答案: 您应该能够设置属性的值,如下所示:
我想从类型中排除一个单独的属性。我该怎么做呢? 比如我有 我想排除属性 以获得
问题内容: 我手动将属性文件注入到jar中。如何从Java 1.7之前的jar文件中加载属性?我尝试了许多解决方法,但到目前为止没有任何效果。 关于它有很多问题,但是所有内容都集中在Java 1.7的ClassLoader方法上。 问题答案: 当您在类路径中或jar文件中具有属性文件时,它将成为资源。其他任何情况都是一个简单的文件。 在打包jar文件之前,需要做的是将属性文件所在的文件夹(即myp
在阅读了关于这个主题的大约50个不同的线程后,我还没有能够有任何解决方案工作。 我正在尝试访问JAR中的config.properties文件。 null null file.jar MyApp 此处的files.class 等… icon.jpg config.properties
是否可以以某种方式配置Spring引导maven插件以包括来自依赖项的资源。 例如,如果在我的spring boot项目中,我有: 在这个JAR文件中有一个属性文件,如 结果1。 但是,当我构建SpringBootJAR时,这个属性文件并没有添加到。包含它的JAR包含在 然而,在我的情况下。我想将的内容提取到Spring BootJAR的引导目录中,这样就可以进行自动配置。 在现实世界中,我试图通