【问题标题】:Values for os.family in Maven profile activation conditionMaven 配置文件激活条件中 os.family 的值
【发布时间】:2013-10-02 02:51:04
【问题描述】:

Maven 允许根据其运行的操作系统系列激活某些构建配置文件,例如:

<profile>
    <activation>
        <os><family>Windows</family></os>
    </activation>
</profile>

围绕这个问题有很多问题:那么os.family 的允许值是多少?它们区分大小写吗? Linux 是否以Unix 出现?还是unix?以此类推。

我在哪里可以找到有关允许值的信息——或者,至少,Maven 从哪里获取这些值?环境变量?

【问题讨论】:

    标签: maven environment-variables maven-profiles


    【解决方案1】:

    这些值在 plexus-utils 项目的 Os.java 中定义。您可以看到 in isOs 匹配不区分大小写,该值取自 System.getProperty( "os.name" ) 并且您应该指定 unix 以匹配 Linux 平台。

    【讨论】:

      【解决方案2】:

      操作系统家族价值观:

      dos
      mac
      netware
      os/2
      tandem
      unix
      windows
      win9x
      z/os
      os/400
      openvms
      

      运行简单程序可以获得的其他值:

      public class SystemProperties {
          public static void main(String[] args) {
              System.out.println("Os name: " + System.getProperty("os.name"));
              System.out.println("Os arch: " + System.getProperty("os.arch"));
              System.out.println("Os version: " + System.getProperty("os.version"));
          }
      }
      

      【讨论】:

        【解决方案3】:

        一个非常有用的 Maven 命令,用于检查您机器上的这些操作系统属性:

        mvn enforcer:display-info
        

        SunOS / Sparc 主机上的示例输出:

        [INFO] Maven Version: 3.0.4
        [INFO] JDK Version: 1.6.0_34 normalized as: 1.6.0-34
        [INFO] OS Info: Arch: sparc Family: unix Name: sunos Version: 5.8
        

        Linux 主机上的示例输出:

        [INFO] Maven Version: 3.0.4
        [INFO] JDK Version: 1.7.0_85 normalized as: 1.7.0-85
        [INFO] OS Info: Arch: amd64 Family: unix Name: linux Version: 2.6.32-504.23.4.el6.x86_64
        

        【讨论】:

        【解决方案4】:

        可能值得向 maven 求助:

        mvn help:system | grep "os\."
        

        【讨论】:

        • 这是我需要用来识别我需要的变量${os.detected.name}
        猜你喜欢
        • 2011-06-05
        • 2018-07-03
        • 1970-01-01
        • 1970-01-01
        • 2011-11-12
        • 2014-10-29
        • 1970-01-01
        • 1970-01-01
        • 2015-03-30
        相关资源
        最近更新 更多