如何在maven项目网站上使用markdown?

时间:2013-02-12 09:22:32

标签: maven markdown maven-site-plugin

如何使用maven和markdown标记语言开始项目文档? Maven站点默认是APT,这对于学习maven方式来说是不舒服的。 (通常团队中的任何人都不会开始编写maven站点文档,因为他们还需要在此过程中学习一种标记语言。)

是否有人试图使用markdown(与github上使用的标记语言相同)来获取Maven项目站点文档?我从Maven Doxia references看到它是可能的。 有什么问题吗?

我是maven网站生成的新手。我认为markdown最好先开始,而不是其他标记语言,团队还没有合作过。

更新。成功了。见下面的答案。

2 个答案:

答案 0 :(得分:63)

来自http://maven.apache.org/doxia/references/index.html

将此添加到pom.xml

          <plugin>    
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-site-plugin</artifactId>
              <version>3.2</version>
              <dependencies>
                <dependency>
                  <groupId>org.apache.maven.doxia</groupId>
                  <artifactId>doxia-module-markdown</artifactId>
                  <version>1.3</version>
                </dependency>
              </dependencies>
            </plugin>

然后开始在src/site/markdown/下添加.md扩展名的网页。 对于每个页面添加菜单项,如下面的sniplet:

 <body>
    <!-- http://maven.apache.org/doxia/doxia-sitetools/doxia-decoration-model/decoration.html 
    <item collapse=.. ref=.. name=.. href="README" img=.. position=.. alt=.. border=.. width=.. height=.. target=.. title=.. >
    -->
    <menu name="User guide">
      <item href="README.html" name="README" />
    </menu>

    <menu ref="reports" inherit="bottom" />
  </body>

使用mvn site生成网站。 请查看target/site以查看结果。

mvn site:stage -DstagingDirectory=C:\TEMP\fullsite将多模块化项目站点放在一个文件夹中。

详细了解maven-site-plugin

我建议使用maven-fluido-skin。它是最新的风格,基于Twitter Bootstrap  将其添加到site.xml

<project name="xxx">
  [...]
  <skin>
    <groupId>org.apache.maven.skins</groupId>
    <artifactId>maven-fluido-skin</artifactId>
    <version>1.3.0</version>
  </skin>
  [...]
</project>

另见 https://github.com/winterstein/Eclipse-Markdown-Editor-Plugin

答案 1 :(得分:4)

另一种标准方法是使用 Maven Site Plugin ,如下所示

使用此方法,您可以利用速度模板引擎过滤。因此,它为您的文档增加了更多功能。