【问题标题】:Where should I track my Java EE web app version我应该在哪里跟踪我的 Java EE Web 应用程序版本
【发布时间】:2013-03-15 04:47:07
【问题描述】:

在 Web 应用程序中,我应该在哪里提及和跟踪 version number?

我正在使用maven,它在pom.xml 中有版本元素。但是,我无法在打包为war 后追溯该版本号。不过,该版本号以applicationname-1.0.1.war 的形式存储在文件名中。我想知道它是否存储在包中的某个位置或以任何方式存储?

【问题讨论】:

    标签: java jakarta-ee maven


    【解决方案1】:

    使用maven archive plugin 将其存储在WARs Manifest 中。

    【讨论】:

      【解决方案2】:

      如果在 MANIFEST 中标记版本足以满足您的需求,那么您需要像这样配置 maven-war-plugin:

        <build>
          <pluginManagement>
            <plugins>
              ...
              <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.3</version>
                <configuration>
                  <archive>
                    <manifest>
                      <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                    </manifest>
                    <manifestEntries>
                      <Build-Repository-Rev>${SVN_REVISION}</Build-Repository-Rev>
                      <Build-Time>${maven.build.timestamp}</Build-Time>
                    </manifestEntries>
                  </archive>
                </configuration>
              </plugin>
              ...
      

      manifestEntries 元素的子元素可以是任何东西,并将创建具有给定名称的条目。在此示例中,除了由“addDefaultImplementationEntries”创建的条目之外,还有使用“SVN_REVISION”环境变量和“maven.build.timestamp”属性创建的“Build-Repository-Rev”和“Build-Time”条目这将包括来自 ${project.version} 的“实施版本”条目集。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-01-30
        相关资源
        最近更新 更多