【问题标题】:What's the recommended packaging for a "documentation" only module with Maven?Maven 的仅“文档”模块的推荐打包方式是什么?
【发布时间】:2014-09-05 02:35:12
【问题描述】:

我不想在 Maven 站点工作流的 site 文件夹下拥有多模块 Maven 项目的文档。该文档位于project-docsproject-parent 下。对于此类模块,packaging 的最佳做法是什么?

设置是

  1. 包装现在配置为jar
  2. 有一个 Maven 插件可在构建工作流程期间在 project-docs 的某个目录 (src/main/docs) 下生成 HTML/PDF 文档。
  3. 有一个default Maven 程序集描述符会生成一个project-docs-NNN-default.zip
  4. 项目的默认工件是一个 JAR 文件。

关于上述(3),备选方案:

包装:pom

不支持prepare-package 作为可能最合适的阶段。如果然后使用阶段site,则无法将生成的文档包含在默认的install 生命周期内。

包装:jar

空的 JAR 没用!

【问题讨论】:

  • 我会在你的情况下使用 JAR,如果你真的不想要空的 JAR,则禁用 JAR 插件执行
  • 安装生命周期适用于 jar 或默认生命周期,而站点部署适用于站点生命周期,因此您可以为此使用 pre-site

标签: maven


【解决方案1】:

由于您不想使用site 生成文档,我认为没有其他“maven 官方方式”可以执行它。

包装

在我看来,您可以使用标准的 POM 包装,通过 maven-assembly-plugin 对其进行压缩并添加一个分类器(doc 或其他所有内容)。

相关问题

这里有一些信息来完成它:

就算已经OK了,也有有意思的地方。

pom.xml

<groupId>com.mycompany</groupId>
<artifactId>your-project</artifactId>
<version>1.1.0</version>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-assembly-plugin</artifactId>
            <executions>
                <execution>
                    <id>doc-packaging</id>
                    <goals>
                        <goal>single</goal>
                    </goals>
                    <phase>package</phase>
                    <configuration>
                        <descriptors>
                            <descriptor>/src/main/assembly/doc.xml</descriptor>
                        </descriptors>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

程序集描述符:它将生成此工件:your-project-doc.zip:

  • 这是(显然)一个 zip 存档
  • “分类器”是 doc(如程序集名称)

相位绑定

由于 pom 没有任何准备工作,你是对的,没有 prepare-package 阶段 (as per doc) 。实际上,您的项目旨在打包 doc ...因此将您的 pdf 插件执行(重新)绑定到 package 是正确的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-16
    • 1970-01-01
    • 2011-11-05
    • 1970-01-01
    • 2011-05-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多