Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

Project Configuration

Setting up a Jasig project to publish a Maven site.

  1. Make sure the project is using the latest jasig-parent pom
  2. Add the following profiles to the project's POM. Changing the PROJECT_NAME path element to the artifactId of the project.
    Code Block
    xml
    xml
    
    

...

  1. <!-- 
     | Used by the continuous integrations server to deploy the project site.
     +-->
    <profile>
        <id>ci-local-site</id>
        <distributionManagement>
            <site>
                <id>ci-local-site</id>
                <url>${jasig-site-ci-dist-base}/PROJECT_NAME/${project.version}</url>
            

...

  1. </site>
        </distributionManagement>
    </profile>
    <!-- 
     | Should be activated 

...

  1. manually by a developer that wishes to deploy a maven site for
     | the project
     

...

  1. +-->
    <profile>
        <id>manual-site</id>
        <distributionManagement>
            <site>
                <id>developer.jasig</id>
                <url>${jasig-site

...

  1. -dist-base}/PROJECT_NAME/${project

...

  1. .version}</url>
            </site>
        </distributionManagement>
    </profile>
    
  2. Change the top level <url> element to:
    Code Block
    xml
    xml
    <url>${jasig-site-base}/PROJECT_NAME/${project.version}</url>
  3. If the project needs to add additional reports or customize reporting plugin use the following examples. Note the defaultMergePolicy, combine.children, merge:children, and merge:removeDuplicates elements are key to making the override work
    • Adding memory and additional links to the javadoc plugin
      Code Block
      xml
      xml
      
      <plugin>
          <groupId>org.jasig.maven</groupId>
          <artifactId>maven-site-plugin</artifactId>
          <configuration>
              <defaultMergePolicy>MERGE</defaultMergePolicy>
              <reportPlugins combine.children="append">
                  <plugin>
                      <artifactId>maven-javadoc-plugin</artifactId>
                      <version>2.8</version>
                      <configuration>
                          <links merge:children="BOTH" merge:removeDuplicates="true">
                              <link>http://static.springsource.org/spring/docs/3.0.x/api/</link>
                              <link>http://ehcache.org/apidocs/</link>
                              <link>http://aopalliance.sourceforge.net/doc/</link>
                              <link>http://java.sun.com/javase/6/docs/api/</link>
                              <link>http://java.sun.com/javaee/5/docs/api/</link>
                          </links>
                          <maxmemory>768m</maxmemory>
                      </configuration>
                  </

...

    • plugin>
              </

...

    • reportPlugins>
          </configuration>
      <

...

    • /plugin>
      
      Code Block
      xml
      xml
      
      <plugin>
          <groupId>org.jasig.maven</groupId>
          <artifactId>maven-site-plugin</artifactId>
          <configuration>
              <defaultMergePolicy>MERGE</defaultMergePolicy>
              <reportPlugins combine.children="append">
                  <plugin>
             

...

    •          

...

    • <artifactId>maven-javadoc-plugin</artifactId>
                      <version>2.8</version>
                      <configuration>
                          <links merge:children="BOTH" merge:removeDuplicates="true">
                              <link>http://static.springsource.org/spring/docs/3.0.x/api/</link>
                              <link>http://ehcache.org/apidocs/</link>
                              <link>http://aopalliance.sourceforge.net/doc/</link>
                         

...

    •      <link>http://java.sun.com/javase/6/docs/api/</link>
             

...

    •                  

...

    • <link>http://java.sun.com/javaee/5/docs/api/</link>
                          </links>
                          <maxmemory>768m</maxmemory>
                      </configuration>
                  </plugin>
              </reportPlugins>
          </configuration>
      

...

    • </plugin>
      
    • Adding the maven-plugin-plugin report
      Code Block
      xml
      xml
      
      <plugin>
          <groupId>org.jasig.maven</groupId>
          <artifactId>maven-site-plugin</artifactId>
          <configuration>
              <defaultMergePolicy>MERGE</defaultMergePolicy>
              <reportPlugins combine.children="append">
                  <plugin>
                      <artifactId>maven-plugin-plugin</artifactId>
                      <version>2.9</version>
                  </

...

    • plugin>
              </

...

    • reportPlugins>
          </

...

    • configuration>
      </plugin>
      

Staging the Site

Before deploying the site you should run the following command to test the site generation:

No Format

mvn clean install site:site site:stage -Pmanual-site

Deploying the Site

To deploy the site run:

No Format

mvn clean install site:site site:stage -Pmanual-site

If deploying the site after cutting a release run:

No Format

cd target/checkout
mvn site:site site:stage -Pmanual-site