首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >rpm-maven- postinstallScriptlet插件示例

rpm-maven- postinstallScriptlet插件示例
EN

Stack Overflow用户
提问于 2015-06-04 14:41:10
回答 2查看 2.8K关注 0票数 0

我想建立一个rpm和安装后运行2脚本。我如何通过rpm-maven-plugin来实现这一点呢?例如,我的脚本是:

代码语言:javascript
复制
/opt/sss/${component.name}/bin/mkdir.sh
/opt/sss/${component.name}/bin/starter.sh

下面是我目前的pom:

代码语言:javascript
复制
<plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>rpm-maven-plugin</artifactId>
                <!-- <version>2.0-beta-3</version> -->
                <extensions>true</extensions>
                <executions>
                    <execution>
                        <goals>
                            <goal>rpm</goal>
                        </goals>
                    </execution>
                </executions>

                <configuration>
                    <group>Applications</group>
                    <release>1</release>
                    <name>${component.name}</name>
                    <version>${project.version}</version>
                    <mappings>
                       <mapping>
                        <directory>/opt/sss/${component.name}/bin</directory>
                            <filemode>775</filemode>
                            <username>root</username>
                            <groupname>super</groupname>
                            <sources>
                                <source>
                                    <location>bin</location>
                                </source>
                            </sources>
                        </mapping>
                    </mappings>
                    <postinstallScriptlet>bin/mkdir.sh</postinstallScriptlet>
                </configuration>
            </plugin>

当我运行它时,我得到了这个错误:

代码语言:javascript
复制
[ERROR] Failed to execute goal org.codehaus.mojo:rpm-maven-plugin:2.1.3:rpm (default-rpm) on project installation: Unable to parse configuration of mojo org.codehaus.mojo:rpm-maven-plugin:2.1.3:rpm for parameter postinstallScriptlet: Cannot configure instance of org.codehaus.mojo.rpm.Scriptlet from
EN

回答 2

Stack Overflow用户

发布于 2015-06-04 21:17:23

我找到了1个脚本的解决方案。当我尝试设置2个脚本文件时,我会更新这个答案。

代码语言:javascript
复制
            <postinstallScriptlet>
                <scriptFile>bin/mkdir.sh</scriptFile>
                <fileEncoding>utf-8</fileEncoding>
            </postinstallScriptlet>
票数 1
EN

Stack Overflow用户

发布于 2018-02-23 06:38:25

一种简单的方法是将两个脚本调用都封装在单个脚本中。像这样:

假设您有两个脚本:

script1.shscript2.sh

编写包装器脚本(wrapper.sh):

#!/bin/bash script1.sh --一些参数脚本2.sh--一些参数

现在通过maven调用postInstallScriptlet:

......./wrapper.sh utf-8

这与PostInstallScriptlet无关,只是一个变通方法。如果有人找到了更好的方法,很高兴接受他们的方法!

如果您想了解有关高级参数的更多信息,请访问以下地址:http://www.mojohaus.org/rpm-maven-plugin/adv-params.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30636699

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档