15.6. 部署你的项目web站点

一旦项目文档已经写好,并且你已经创建了一个引以为傲的站点,你会想将其部署到服务器上。要部署你的站点,你需要使用Maven Site插件,它会使用很多种方法如FTPSCP,和DAV,将你的项目站点部署到远程服务器上。要使用DAV部署站点,在POM中配置distributionManagement小节的site元素,如:

Example 15.7. 配置站点部署

<project>
  ...
  <distributionManagement>
    <site>
      <id>sample-project.website</id>
      <url>dav:https://dav.sample.com/sites/sample-project</url>
    </site>
  </distributionManagement>
  ...
</project>


distributionManagementurl的值有一个开头标记dav,它告诉Maven Site插件部署该站点至一个理解WebDAVURL。一旦你已经在我们的sample-project POM中添加了该distributionManagement小节,我们就可以部署该站点:

$ mvn clean site-deploy

如果你有一个正确配置的,并能理解WebDAV的服务器,Maven就会将项目的web站点部署到远程服务器。如果你正将该项目站点部署到一个公共可见的服务器上,你就会需要配置web服务器的访问证书。比如你的web服务器要求一个用户名和密码(或者其它证书,你可以在你的~/.m2/settings.xml中配置它的值)

15.6.1. 配置服务器认证

在站点部署的过程中配置用户名/密码组合,我们在$HOME/.m2/settings.xml中包含如下的XML:

Example 15.8. 在用户特定Settings中存储服务器认证信息

<settings>
  ...
  <servers>
    <server>
      <id>sample-project.website</id>
      <username>jdcasey</username>
      <password>b@dp@ssw0rd</password>
    </server>
    ...
  </servers>
  ...
</settings>


服务器认证小节可以包含很多认证元素。如果你正使用SCP进行部署,你可能会希望使用公钥认证。为此,不再使用password元素,而是使用publicKeypassphrase元素。根据服务器的配置,可能你仍然需要配置username元素。