我正在构建一个包含3PP软件和其他配置文件的rpm包。如果我不包含配置文件,则rpm会正确构建,但是当我包含配置文件时,rpm构建但在实验室中安装3PP软件失败。 这是我的pom.xml的快照:
<properties>
<rpm-root>/opt</rpm-root>
<comp-name>mycompany</comp-name>
<install-path>mgmt</install-path>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>rpm-maven-plugin</artifactId>
<configuration>
<mappings>
<mapping>
<directory>${rpm-root}</directory>
<configuration>true</configuration>
<sources>
<source>
<location>src/main/binary</location>
</source>
</sources>
</mapping>
<mapping>
<directory>${rpm-root}/${comp-name}/${install-path}/config</directory>
<directoryIncluded>false</directoryIncluded>
<configuration>true</configuration>
<sources>
<source>
<location>src/main/config</location>
</source>
</sources>
</mapping>
</mappings>
</configuration>
</plugin>
在src / main / binary中这就是我所拥有的: ls -ltr src / main // binary / opendj
opendj是我正在打包的3PP软件。
使用上面的pom.xml,这就是我得到的:
/opt/mycompany/mgmt/config/mgmt.properties
/opt/opendj/Legal/license_to_accept.txt
/opt/opendj/QuickSetup.app/Contents/Info.plist
在这种情况下,3PP(opendj)的安装失败
如果我没有在rpm插件中包含配置文件,这就是我得到的:
**/opt
/opt/opendj**
/opt/opendj/Legal
/opt/opendj/Legal/license_to_accept.txt
/opt/opendj/QuickSetup.app
/opt/opendj/QuickSetup.app/Contents
/opt/opendj/QuickSetup.app/Contents/Info.plist
你可以看到,在这种情况下,包会创建目录/ opt和/ opt / opednj等。 在这种情况下,3PP(opendj)的安装成功。
谢谢!