Skip to content
nellayrrab edited this page Apr 19, 2018 · 6 revisions

Welcome to the powerapi wiki!

Getting Started with PowerAPI

Setting Up PowerAPI via Maven repositories and Netbeans 8.02

Introduction

This tutorial is aimed at beginners with no prior experience with maven whatsoever. this tutorial will demonstrate how to acquire powerAPI through netbeans 8.02.

Prerequisites

In order to use PowerAPI through Netbeans, the following has to be installed: Netbeans 8.02 Scala plugin for Netbeans Maven plugin for Netbeans

The above plugins are available under tools>Plugins, search for "scala" and "maven" and download results

###Creating a Maven Project Once you have successfully installed your plugins; create a new Maven project by selecting Maven from file>New Project>Java Application Click next, Enter your project name then click finish

POM.xml

The POM.xml file contains all the information necessary to help build the project, to edit the POM, simply navigate to project files add double click the POM.xml. Below is a sample POM file you can use to build the project:

`

   <plugins>  
    <plugin>  
     <groupId>org.codehaus.mojo</groupId>  
     <artifactId>exec-maven-plugin</artifactId>  
     <version>1.1.1</version>  
     <executions>  
      <execution>  
       <phase>test</phase>  
       <goals>  
        <goal>java</goal>  
       </goals>  
       <configuration>  
        <mainClass>com.sacha.mavenproject2.mainClass</mainClass>  
        <arguments>  
         <argument>arg0</argument>  
         <argument>arg1</argument>  
        </arguments>  
       </configuration>  
      </execution>  
     </executions>  
    </plugin>  
   </plugins>  
</build>  

<dependencies>
    <dependency>
        <groupId>org.scala-lang</groupId>
        <artifactId>scala-library</artifactId>
        <version>2.11.7</version>
    </dependency>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>2.5</version>
    </dependency>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>2.5</version>
    </dependency>
    <dependency>
        <groupId>org.scoverage</groupId>
        <artifactId>scalac-scoverage-runtime_2.11</artifactId>
        <version>1.1.1</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.scoverage</groupId>
        <artifactId>scalac-scoverage-plugin_2.11</artifactId>
        <version>1.1.1</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>com.typesafe.akka</groupId>
        <artifactId>akka-actor_2.11</artifactId>
        <version>2.3.14</version>
    </dependency>
    <dependency>
        <groupId>com.typesafe</groupId>
        <artifactId>config</artifactId>
        <version>1.2.1</version>
    </dependency>
    <dependency>
        <groupId>fr.inria.powerspy</groupId>
        <artifactId>powerspy-core_2.11</artifactId>
        <version>1.2</version>
    </dependency>
    <dependency>
        <groupId>com.nativelibs4java</groupId>
        <artifactId>bridj</artifactId>
        <version>0.7.0</version>
    </dependency>
    <dependency>
        <groupId>com.github.scala-incubator.io</groupId>
        <artifactId>scala-io-core_2.11</artifactId>
        <version>0.4.3</version>
    </dependency>
    <dependency>
        <groupId>com.github.scala-incubator.io</groupId>
        <artifactId>scala-io-file_2.11</artifactId>
        <version>0.4.3</version>
    </dependency>
    <dependency>
        <groupId>org.jfree</groupId>
        <artifactId>jfreechart</artifactId>
        <version>1.0.19</version>
    </dependency>
    <dependency>
        <groupId>org.scala-saddle</groupId>
        <artifactId>saddle-core_2.11</artifactId>
        <version>1.3.4</version>
    </dependency>
    <dependency>
        <groupId>org.hyperic</groupId>
        <artifactId>sigar</artifactId>
        <version>1.6.5.132</version>
    </dependency>
    <dependency>
        <groupId>net.java.dev.jna</groupId>
        <artifactId>jna</artifactId>
        <version>4.2.1</version>
    </dependency>
    <dependency>
        <groupId>io.spray</groupId>
        <artifactId>spray-json_2.11</artifactId>
        <version>1.3.2</version>
    </dependency>
    <dependency>
        <groupId>com.github.docker-java</groupId>
        <artifactId>docker-java</artifactId>
        <version>2.1.4</version>
    </dependency>
    <dependency>
        <groupId>org.influxdb</groupId>
        <artifactId>influxdb-java</artifactId>
        <version>2.1</version>
    </dependency>
    <dependency>
        <groupId>com.typesafe.akka</groupId>
        <artifactId>akka-testkit_2.11</artifactId>
        <version>2.3.14</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.scalatest</groupId>
        <artifactId>scalatest_2.11</artifactId>
        <version>2.2.5</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.scalamock</groupId>
        <artifactId>scalamock-scalatest-support_2.11</artifactId>
        <version>3.2.2</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.powerapi</groupId>
        <artifactId>powerapi-core_2.11</artifactId>
        <version>4.0</version>
        <type>jar</type>
    </dependency>
</dependencies>`

Notes

To test the project, please use the example code provided in ProCFSAppMonitor.java from the examples folder