当前位置: 首页 > 知识库问答 >
问题:

如何使用Spring Boot和Maven从RPM构建中排除application.properties

凤昊东
2023-03-14

我的spring boot应用程序使用rpm-maven-plugin打包成rpm文件。我的目标是从rpm中排除application.properties。

rpm-maven-plugin configs

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>rpm-maven-plugin</artifactId>
    <version>2.1.5</version>
    <executions>
        <execution>
            <id>generate-rpm</id>
            <goals>
                <goal>rpm</goal>
            </goals>
            <phase>rpm</phase>
        </execution>
    </executions>
    <configuration>
        <group>demo-app</group>
        <mappings>
            <mapping>
                <directory>/var/demoapp/bin</directory>
                <filemode>755</filemode>
                <username>test</username>
                <groupname>test</groupname>
                <sources>
                    <source>
                        <location>target/${project.artifactId}-${project.version}.jar</location>
                    </source>
                </sources>
            </mapping>
            <mapping>
                <directory>/var/demoapp/conf</directory>
                <filemode>755</filemode>
                <username>test</username>
                <groupname>test</groupname>
                <sources>
                    <source>
                        <location>src/main/resources/</location>
                    </source>
                </sources>
            </mapping>
        </mappings>
        <preinstallScriptlet>
            <scriptFile>src/main/resources/rpm/preinstall.sh</scriptFile>
        </preinstallScriptlet>
        <postinstallScriptlet>
            <scriptFile>src/main/resources/rpm/postinstall.sh</scriptFile>
        </postinstallScriptlet>
    </configuration>
</plugin>

项目文件夹结构-src/main/资源/application.properties

rpm文件中的文件夹结构

父文件夹- /var/demoapp

/bin-包含jar文件

/conf-此文件夹包含application.properties文件。这将被删除

有人能在这方面指导吗?

共有1个答案

郁和通
2023-03-14

修改排除路径后,它的工作

             <mapping>
                <directory>/var/demoapp/conf</directory>
                <filemode>755</filemode>
                <username>test</username>
                <groupname>test</groupname>
                <sources>
                    <source>
                        <location>src/main/resources/</location>
                        <excludes>
                         <exclude>application.properties</exclude>
                        </excludes>
                    </source>
                </sources>
            </mapping>

这里,application.properties位于src/main/resources/application . properties中

 类似资料:
  • 我有一个具有多个pom层的微服务项目。我使用“org.codehaus.mojo: rpm-maven-plugin: 2.1.1”插件为每个服务生成rpm。我需要将其设置为生成一个rpm,并将所有这些rpm作为所需的依赖项。 在父pom中,我添加了设置为无源,但需要两个rpm包。当我向父级添加相同的设置时,它失败了,我不明白我缺少了什么。 例如:项目组--ProjectCommon--Proje

  • 问题内容: 这就是我所需要的。其他详细信息:我有一个src / bootstrap / java文件夹和一个常规的src / main / java文件夹。出于明显的原因,每个人都需要进入一个单独的罐子。我能够使用以下命令生成一个引导罐: 但是常规jar仍包含bootstrap类。我正在用这个答案编译bootstrap类。 没有启动类的任何灯光来生成myproject.jar? 问题答案: 您必须

  • 我在一个项目中使用了,该项目是用文件作为影子JAR构建的(即,这些文件包含在JAR中,而不仅仅是一个依赖项。 问题是,2.10.0现在已经存在已知的安全问题,但没有更新版本的spring库带有补丁的jackson文件。所以,我需要做的是使用现有的spring图书馆,但更新的jackson图书馆。如果它是一个正常的依赖关系,这将是足够容易的,但显然文件不能从spring库中删除。 因此,有什么方法可

  • 我在一个使用openrdf的项目中,我需要shade插件来转换我的服务条目。我想同时建立一个战争和一个罐子,因为这两种用法都是可能的。但是,我不能让shade插件同时生成带阴影的jar和带阴影的WAR-Shade只在属性中定义的包类型上调用,并且将jar插件绑定到包阶段以便在war旁边创建一个jar,结果会产生一个无阴影的jar。我怎样才能同时创建一个有阴影的罐子和一个有阴影的战争呢?

  • 在我的构建过程中(使用maven命令),我的maven编译器会自动下载依赖(repository/log4j/log4j/),但由于这有漏洞问题,我需要排除这个传递依赖下载。 这是我的POM(但实际上并不需要,因为空POM也会使用默认的mvn编译器下载它?)

  • 所以,我已经找了好几个小时了,我完全陷入了困境。 我的问题很简单:我有一个(相当大的)项目,我想用Maven来构建(所以我可以稍微自动化一下)。到目前为止,除了一个主要问题外,一切正常。 我有一个称为“java插件”的依赖项——我不知道它的确切来源或作者,但它在我的依赖项的依赖项中——我将它添加到我们自己的Nexus第三方存储库中,并使用原始jar的名称。 这个插件是从我的Nexus添加的,没有任