HOWTO use ns-3 with BonnMotion mobility generator and analysis tool

From Nsnam
Jump to: navigation, search

Main Page - Current Development - Developer FAQ - Tools - Related Projects - Project Ideas - Summer Projects

Installation - Troubleshooting - User FAQ - HOWTOs - Samples - Models - Education - Contributed Code - Papers

BonnMotion is a mobility scenario generator and analysis tool. It can export a trace format that can be imported by ns-3.

Installation

BonnMotion requires a Java Runtime Engine (JRE) and a Java Development Kit (JDK). The installation

 sudo apt-get install openjdk-7-jre openjdk-7-jdk
 # cd to a directory used to install software from source, such as /usr/local/src
 unzip bonnmotion-2.0.zip
 cd bonnmotion-2.0
 ./install

You will be queried as follows:

 Please enter your Java binary path [/usr/bin]: 

simply hit return.

You may next see the following:

 Creating scripts ... bm ... compile ... makedoc ... done.
 Starting compilation ...
 Compiling EdgeList.java ... done.
 Compiling Model.java ... done.
 Compiling CatastropheNode.java ... done.
 Compiling Nomadic.java ... done.
 Compiling RandomWaypoint.java ... done.
 Compiling ChainScenario.java ... done.
 Compiling RandomDirection.java ... done.
 Compiling ClusterMember.java ... done.
 Compiling Cluster.java ... done.
 Compiling SLAWBase.java ... done.
 Compiling RPGM.java ... done.
 Compiling Pursue.java ... done.
 Compiling RandomWaypoint3D.java ... done.
 Compiling Column.java ... done.
 Compiling SLAW.java ... done.
 Compiling ProbRandomWalk.java ... done.
 Compiling Static.java ... done.
 Compiling RandomWalk.java ... done.
 Compiling RandomStreet.java ... done.
 Compiling SteadyStateRandomWaypoint.java ... done.
 Compiling GaussMarkov.java ... done.
 Compiling TIMM.java ... done.
 Compiling OriginalGaussMarkov.java ... done.
 Compiling StaticDrift.java ... done.
 Compiling ManhattanGrid.java ... done.
 Compiling Visplot.java ... done.
 Compiling WiseML.java ... done.
 Compiling GPXImport.java ... done.
 Compiling Cut.java ... done.
 Compiling TheONEFile.java ... done.
 Compiling SPPXml.java ... done.
 Compiling ScenarioConverter.java ... done.
 Compiling LinkDump.java ... done.
 Compiling LongestLink.java ... done.
 Compiling IntervalFormat.java ... done.
 Compiling Dwelltime.java ... done.
 Compiling GlomoFile.java ... done.
 Compiling NSFile.java ... done.
 Compiling Statistics.java ... done.
 Compiling SampleSet.java ... done.
 Compiling Function.java ... done.
 Compiling GeometricMeanCalculator.java ... done.
 done.
 $ ./bin/bm -h
 Exception in thread "main" java.lang.UnsupportedClassVersionError: edu/bonn/cs/iv/bonnmotion/run/BM : Unsupported major.minor version 51.0
 at java.lang.ClassLoader.defineClass1(Native Method)
 at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
 at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
 at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
 at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
 at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
 at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
 Could not find the main class: edu.bonn.cs.iv.bonnmotion.run.BM. Program will exit.

There are two errors above:

  • The "Unsupported major.minor version 51.0" error is due to using a different version JRE than JDK. You probably installed openjdk-7-jdk but note that it also installs openjdk-6-jre and sets version 6 to the default. You can change this by running 'sudo update-alternatives --config java' and selecting '/usr/lib/jvm/java-7-openjdk-i386/jre/bin/java' which matches your compilation environment.
  • your system could not find the classes provided by BonnMotion; this is a problem with the Java CLASSPATH.