Fractal | Fractal ADL | Cecilia Examples | Minus
 

As many other Fractal projects, Cecilia uses the Maven build system to build, assemble, deploy and document itself. Moreover, the Cecilia framework, provides a maven extension that allows to use Maven for building Cecilia applications.

Cecilia artifacts are deployed on the ObjectWeb maven repository. This repository is mirrored on the maven central repository. So if you use only stable releases of the Cecilia framework, no specific Maven configuration is required.

Installing Maven

Follow the steps indicated on the Maven Download page.

If you are behind a Web proxy, make sure to configure it in Maven. For more information, see the Guide to using a Proxy.

Use SNAPSHOT version of the Cecilia framework

To use SNAPSHOT version of the Cecilia artifacts, you must configure Maven to access to the ObjectWeb maven snapshot repository.

To do so, edit your ~/.m2/settings.xml and add the following lines:

<settings>
  <!-- ........ -->

  <profiles>
    <profile>
      <id>objectweb</id>
      <repositories>
        <repository>
          <id>objectweb-release</id>
          <name>ObjectWeb Maven Repository</name>
          <url>http://maven.objectweb.org/maven2</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </repository>
        <repository>
          <id>objectweb-snapshot</id>
          <name>ObjectWeb Maven Repository</name>
          <url>http://maven.objectweb.org/maven2-snapshot</url>
          <releases>
            <enabled>false</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
            <updatePolicy>daily</updatePolicy>
          </snapshots>
        </repository>
      </repositories>

      <pluginRepositories>
        <pluginRepository>
          <id>objectweb-release</id>
          <name>ObjectWeb Maven Repository</name>
          <url>http://maven.objectweb.org/maven2</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </pluginRepository>
        <pluginRepository>
          <id>objectweb-snapshot</id>
          <name>ObjectWeb Maven Repository</name>
          <url>http://maven.objectweb.org/maven2-snapshot</url>
          <releases>
            <enabled>false</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
            <updatePolicy>daily</updatePolicy>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
  </profiles>

  <!--
     To make the "objectweb" profile used by default when you utilize Maven to
     build a project
  -->
  <activeProfiles>
    <activeProfile>objectweb</activeProfile>
  </activeProfiles>

  <!-- ........ -->
</settings>

Configuring Maven for deploying and releasing Cecilia

This section details how to configure Maven to be able to deploy and release Cecilia artifacts. Only Cecilia developers have to take care of the following.

To be able to deploy artifacts on the ObjectWeb repository, Maven has to know your ObjectWeb Forge login name if this latter is different from your local username.

To do so add the following lines in your ~/.m2/settings.xml:

<settings>
  <!-- ........ -->

  <servers>
    <server>
      <id>objectweb-snapshot</id>
      <username>YOUR OW2 USERNAME</username>
    </server>

    <server>
      <id>objectweb-release</id>
      <username>YOUR OW2 USERNAME</username>
    </server>

    <server>
      <id>objectweb-site</id>
      <username>YOUR OW2 USERNAME</username>
    </server>
  </servers>

  <!-- ........ -->
</settings>

Finally, when a new stable Cecilia version is released, Maven automatically creates a tag in the SVN repository. To do so, once again, Maven needs your ObjectWeb Forge login name.

To specify it add the following lines in your ~/.m2/settings.xml inside the objectweb profile:

<settings>
  <!-- ........ -->

  <profiles>
    <profile>
      <id>objectweb</id>
      <!-- ........ -->

      <properties>
        <ow.username>YOUR OW2 USERNAME</ow.username>
      </properties>

      <!-- ........ -->
    </profile>
  </profiles>
  <!-- ........ -->
</settings>
 
2007-2009 © ObjectWeb Consortium  | Last Published: 2009-04-21 13:30  | Version: 2.1.0