Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Let's get started contributing to GeoMesa. This set of instructions assumes you are starting from scratch. I am writing this as I go through the process and learn how to do this myself.

Step-by-step guide

Get the toolchain

https://github.com/ccri/devenv

Follow the readme.md. 

Understand the workflow

https://ccristudio.jira.com/wiki/display/SPINOZA/Development+workflow+using+github+and+JIRA

Get the toolchain

https://github.com/ccri/devenv

Follow the readme.md. 

Quick start guides

Quick start guide is an overloaded term. Here are all the quick start guides. Note they all also refer the reader to the Deployment tutorial. It does not seem you will need to worry about deployment. Instead use for example dcloud. The deployment tutorial also is oriented toward a tarball. You will instead want to pull from github.

The homepage quickstart is  seems too quick really for starting from scratch, note it refers you to the Deployment tutorial. Our effort will focus on the deployment tutorial and then turn to, in this instance, the .  There is also an Accumulo quick start. There is also a And a a Kafka quickstart.  The structure of this it and the Accumulo quick start are quite similar.

Of note is that there are differing maven calls for geomesa itself:

  • homepage calls `build/mvn`  
  • deployment tutorial starts from binaries
  • accumulo calls plain `mvn`
  • kafka skips this

 

Attempts to install (scratch notes)

geomesa$ build/mvn clean install -DskipTests -Daccumulo-1.5

geomesa$ geomesa

could not find geomesa-tools/lib and then also Error: could not find or load main class org.locationtech.geomesa.tools.Runner

same result for `test-geomesa`

subsequent: 

geomesa$ geomesa configure

then reset yes and yes. does not resolve issue.

 

2 – resetting changes to pom.xml  oop

geomesa$ build/mvn clean install -DskipTests -Daccumulo-1.5
geomesa$ geomesa

could not find geomesa-tools/lib and then also Error: could not find or load main class org.locationtech.geomesa.tools.Runner

same result for `test-geomesa`

subsequent: 

geomesa$ geomesa configure

then reset yes and yes. does not resolve issue.

geomesa$ mkdir geomesa-tools/lib
geomesa$ geomesa configure
geomesa$ geomesa

now it doesn't complain about the lib but it does complain about the org.locationtools...Runner 

 

java -cp classpath org.locationtech.geomesa.tools.Runner

 

 

Need to undo ~/.bashrc changes? or did mvn handle that? did mvn handle jai jline vecmath? 

Source control

If you need a crash course in git and/or github https://guides.github.com/ has some good resources. Of particular interest are https://guides.github.com/introduction/flow/ which mirrors the workflow. Also nice: http://rogerdudler.github.io/git-guide/ or for more hands on approach  - https://www.codecademy.com/learn/learn-git.

...

https://maven.apache.org/guides/getting-started/maven-in-five-minutes.html

mvn ... -DskipTests 

Need to pay attention to build phases.

One of the interesting things going on is that the quick start

Debugging

(Use large memory to avoid outOfRam error)
export MAVEN_OPTS="-Xmx8192m -XX:MaxPermSize=512m -XX:-UseGCOverheadLimit -Duser.timezone=UTC"
(Debug with IntelliJ)
export MAVEN_OPTS="-Xmx8192m -XX:MaxPermSize=512m -XX:-UseGCOverheadLimit -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=9898 -Duser.timezone=UTC"

...