我正在使用RPM -maven-插件生成一个rpm。我想使用相关的运行时 env变量指定目标目录。问题是插件在编译时计算变量。
例如,${JAVA_HOME}
<mapping>
<directory>${JAVA_HOME}/ext</directory>
<sources>
<source>
<location>/home/user/run.sh</location>
</source>
</sources>
</mapping>我希望RPM规范文件中的目录保持${JAVA_HOME}/ext,并且只在RPM安装期间(即运行时)进行评估。
发布于 2019-11-10 21:12:51
对于这个文档,每个环境变量都可以使用env.前缀。所以你可以这样使用它:
<mapping>
<directory>${env.JAVA_HOME}/ext</directory>
<sources>
<source>
<location>/home/user/run.sh</location>
</source>
</sources>
</mapping>Note
有两个不同的性质是不同的。
${env.JAVA_HOME}是一个环境变量,它可能不会被设置。${java.home}是一个预定义的系统属性,它指向Java文件夹。https://stackoverflow.com/questions/58792777
复制相似问题