Steve asked me to send a shout out here, so Maven users can give us 
feedback about this.

  I just committed first part of the Maven plugin for Terracotta. 
Currently it supports only tc:bootjar tc:start and tc:stop. First one 
will build bootjar and the other two will start and stop DSO server 
accordingly. I'll be adding few more goals in a next few days, the idea 
is to have something like tc:run and tc:test goals that would do the 
required orchestration for building bootjar, starting dso server and 
spawning several java processes configured with DSO. If you have ideas 
or suggestions please don't hesitate to share.

  Currently the tc:bootjar goal can be bound to the project build cycle 
in the plugins section of pom.xml (that will automatically run 
tc:bootjar goal when you run mvn package or mvn install):

      <plugin>
        <groupId>org.terracotta.maven.plugins</groupId>
        <artifactId>tc-maven-plugin</artifactId>
        <executions>
           <execution>
              <phase>package</phase>
              <goals>
                 <goal>bootjar</goal>
              </goals>
           </execution>
        </executions>
        <configuration>
          <verbose>true</verbose>
          <overwrite>true</overwrite>
          <config>tc-config.xml</config>
          <bootJar>target/bootjar.jar</bootJar>
          <!-- <jvm>C:\jdk1.6.0\bin\java.exe</jvm> -->
        </configuration>
      </plugin>


  To make it work you need to get few dependencies setup. Right now they 
need to be installed into local Maven repository manually, but I hope we 
can get them deployed in one of the Maven repositories soon.

  First of all you'll need a snapshot version of the 
maven-antrun-plugin. It is not avaialable from any snapshot repositories 
yet, but you can install it locally:

svn co 
https://svn.apache.org/repos/asf/maven/plugins/trunk/maven-antrun-plugin
mvn install


  Additional required artifacts. These jars available from Terracotta 
install, i.e. after running "tcbuild dist" command they are all in 
dist\lib folder and you'll need to run the following commands to get 
them to local Maven repository (maybe we can get some shortcut target 
for that in the "tcbuild").

set tc=C:\dev\terr\tc-trunk\code\base\build\dist\terracotta-trunk\lib
 
call mvn install:install-file -DgeneratePom=true 
-DgroupId=org.terracotta -DartifactId=terracotta -Dversion=2.4 
-Dpackaging=jar -Dfile=%tc%\tc.jar
call mvn install:install-file -DgeneratePom=true 
-DgroupId=org.terracotta -DartifactId=tcconfig -Dversion=2.4 
-Dpackaging=jar -Dfile=%tc%\tcconfig-xmlbeans-generated.jar
call mvn install:install-file -DgeneratePom=true 
-DgroupId=org.terracotta -DartifactId=tcconfig1 -Dversion=1.0 
-Dpackaging=jar -Dfile=%tc%\tcconfigV1.jar
call mvn install:install-file -DgeneratePom=true 
-DgroupId=org.terracotta -DartifactId=tcconfig2 -Dversion=2.0 
-Dpackaging=jar -Dfile=%tc%\tcconfigV2.jar

call mvn install:install-file -DgroupId=javax.management 
-DartifactId=jmxri -Dversion=1.2.1 -Dpackaging=jar 
-Dfile=%tc%\jmxri-1.2.1.jar
call mvn install:install-file -DgroupId=com.sun.jdmk 
-DartifactId=jmxtools -Dversion=1.2.1 -Dpackaging=jar 
-Dfile=%tc%\jmxtools-1.2_8.jar
call mvn install:install-file -DgroupId=javax.management 
-DartifactId=jmxremote -Dversion=1.0.1_04 -Dpackaging=jar 
-Dfile=%tc%\jmxremote-1.0.1_04.jar
call mvn install:install-file -DgroupId=javax.management 
-DartifactId=jmxremote_optional -Dversion=1.0.1_04 -Dpackaging=jar 
-Dfile=%tc%\jmxremote_optional-1.0.1_04-b58.jar


  Once you got all of the above, you can grab maven-tc-plugin from svn 
and install it to local Maven repository:

svn co https://svn.terracotta.org/repo/tc/maven-plugin/trunk/maven-tc-plugin
mvn install


  That is about it for now.

  regards,
  Eugene

PS: Orion, can you please stick this on the wiki somewhere? After that I 
can update it with new changes and features. Thanks



_______________________________________________
tc-dev mailing list
[email protected]
http://lists.terracotta.org/mailman/listinfo/tc-dev

Reply via email to