用法

您可以在您的站点中添加其他内容(例如文档、资源等)。有关这方面的更多信息,请参阅创建内容。如果您想更改页面上的菜单、面包屑、链接或徽标,您需要添加和配置站点描述符。如果你愿意,你也可以让 Maven根据你的 POM 的内容为你生成一些报告。

生成站点

要生成项目的站点和报告,请执行:

mvn site

默认情况下,生成的站点将位于target/site/目录中。

注意:如果您有一个多模块项目,那么当您使用mvn sitemvn site:site时,父模块和子模块之间的链接将不起作用。如果你想使用这些链接,你应该使用mvn site:stage代替。您可以在此页面的“登台站点”部分中进一步了解该目标。

注意:出于性能原因,Maven 会比较生成文件和相应源文档的时间戳,并且仅重新生成自上次构建以来发生更改的文档。但是,这仅适用于文档源文档(apt、xdoc、...)。如果您更改site.xml中的任何内容、pom 中的任何相关部分或任何相关属性或资源文件,您应该从头开始生成站点以确保所有引用和链接都是正确的。

部署站点

为了能够部署站点,您必须首先指定站点的部署位置。这是在 POM 的<distributionManagement>元素中设置的,如下所示。

<project>
  ...
  <distributionManagement>
    <site>
      <id>www.yourcompany.com</id>
      <url>scp://www.yourcompany.com/www/docs/project/</url>
    </site>
  </distributionManagement>
  ...
</project>

< id>元素标识存储库,因此您可以使用<servers>元素在settings.xml文件中将凭据附加到它,就像对任何其他存储库一样。

<url>给出了部署的位置。在上面的示例中,我们通过scp协议使用路径/www/docs/project/复制到主机www.mycompany.com 。您可以在此页面上阅读有关支持哪些协议的更多信息。如果子项目从父 POM 继承站点 URL,它们将自动附加其<artifactId>以形成其有效部署位置。

现在您可以从项目目录执行site:deploy目标。

注意:在执行site:deploy之前必须先生成一个站点。

mvn site:deploy

如果您想一次性生成站点部署它,您可以利用站点生命周期的站点部署阶段。为此,只需执行:

mvn site-deploy

登台站点

注意:此目标在站点插件的 2.0-beta-5 或更高版本中可用。

要在正式部署之前查看/测试生成的网站,您可以将网站暂存到特定目录中。它将使用<distributionManagement>元素或项目层次结构来链接项目及其模块。

只需从您的项目中执行site:stage目标

mvn site:stage

注意:从 2.3 版本开始,在执行site:stage之前必须先生成一个站点。

默认情况下,站点将暂存于目录target/staging/中。可以使用stagingDirectory参数选择不同的暂存位置,如下所示:

mvn site:stage -DstagingDirectory=C:\fullsite

注意: stagingDirectory不能是动态的,即stagingDirectory=${basedir}\fullsite

要暂存站点并进行部署,只需使用所需参数从项目中执行site:stage-deploy目标。site:stage-deploy目标将使用distributionManagement.site.id的值作为默认 id 在您的settings.xml中查找服务器部分;除非未定义,否则字符串stagingSite将用作 id。因此,如果您需要在settings.xml中为 stage-deploy 单独添加用户名或密码,则应为该<server>部分使用<id>stagingSite</id> 。有关这方面的更多信息,请参阅部署和安全设置指南。

默认情况下,站点将被阶段部署到$ distributionManagement.site.url /staging/。可以使用stagingSiteURL参数选择不同的位置,如下所示:

mvn site:stage-deploy -DstagingSiteURL=scp://www.mycompany.com/www/project/

注意:从 2.3 版本开始,在执行site:stage-deploy之前必须先生成一个站点。

注意:由于 Wagon 中的一个错误,当您运行site:stage-deploy目标时,密码并不总是被拾取。该错误已修复,但站点插件使用的 Wagon 版本取决于您使用的 Maven 版本。当前 2.0.x 版本的 Maven 使用的版本仍然存在此错误。

运行站点

站点插件也可用于在 Jetty 中启动站点。为此,请执行:

mvn site:run

默认情况下,服务器将在http://localhost:8080/上启动。有关 Jetty 服务器的更多信息,请参见http://jetty.mortbay.org/

注意:运行站点仅适用于单模块站点。要预览多模块站点,应该使用site:stage