片段宏指南

使用 Maven 生成项目网站时,您可以选择在页面中动态包含源代码片段

片段是源代码文件的一部分,被特殊格式的注释包围。

此功能受到Confluence片段宏的启发,由 Maven Doxia 项目通过 Maven 站点插件提供。

要在文档中包含源代码片段,首先在源文档中围绕要包含的行添加注释,然后通过文档文件中的 id 引用片段。必须为每个片段分配一个 id,并且该 id 在源文档中必须是唯一的。如果要包含整个文件,则不需要 id 参数。

以下是各种源文档中的片段示例,以及 APT 文档格式中的相应宏。

有关更多信息和示例,请参阅 Doxia宏指南

源代码片段

爪哇

    // START SNIPPET: snip-id
    public static void main( String[] args )
    {
        System.out.println( "Hello World!" );
    }
    // END SNIPPET: snip-id

XML

  <!-- START SNIPPET: snip-id -->
  <navigation-rule>
    <from-view-id>/logon.jsp</from-view-id>
    <navigation-case>
      <from-outcome>success</from-outcome>
      <to-view-id>/mainMenu.jsp</to-view-id>
    </navigation-case>
  </navigation-rule>
  <!-- END SNIPPET: snip-id -->

JSP

  <%-- START SNIPPET: snip-id --%>
  <ul>
      <li><a href="newPerson!input.action">Create</a> a new person</li>
      <li><a href="listPeople.action">List</a> all people</li>
  </ul>
  <%-- END SNIPPET: snip-id --%>

文档中的片段

易于

 %{snippet|id=snip-id|url=http://svn.example.com/path/to/Sample.java}

 %{snippet|id=snip-id|url=file:///path/to/Sample.java}

从 doxia-core 版本 1.0-alpha-9 开始,还提供了一个“文件”参数。如果未指定完整路径,则假定该位置相对于 ${basedir}。

 ~~ Since doxia-core 1.0-alpha-9
 %{snippet|id=abc|file=src/main/webapp/index.jsp}
  • apt 中的宏不能缩进。
  • 必须指定url或中的一个。file