After initially starting development for Sibbly on Ubuntu, as I was always planning on deploying on Ubuntu, I had migrated back to windows, and after a couple weeks of work when finally deploying to Ubuntu... Surprise! it obviously did work right off the bat.
The issue I ended up with was, there seems to be a classpath issue between Spring Boot, it's embedded Tomcat instance and Jython. The reason I use Jython is for an awesome library called Pygments.
So after much dismay and checking all the Java alternatives and attempted Pygment ports (jygments, jgments), I started thinking of alternate solutions.
Having recently read: Microservices I decided to look at a way of interacting with Python more indirectly.
This lead me to: Flask
Within a couple minutes thanks to: Awesome Flask Example
I had the following up and running:
What this little bit of Python does is wrap and expose the highlight and guess functionality from Pygments via a RESTful service accepting and producing JSON.
I deploy Sibbly on DigitalOcean
To install Python on my droplet, I followed the process below:
sudo apt-get install python-dev build-essential sudo apt-get install zlib1g-dev sudo apt-get install libssl-dev openssl sudo apt-get install python-pip sudo pip install virtualenv sudo pip install virtualenvwrapper export WORKON_HOME="$HOME/.virtualenvs" source /usr/local/bin/virtualenvwrapper.sh sudo mkdir /opt/python3.4.1 wget http://python.org/ftp/python/3.4.1/Python-3.4.1.tgz tar xvfz Python-3.4.1.tgz cd Python-3.4.1 ./configure --prefix=/opt/python3.4.1 make sudo make install mkvirtualenv --python /opt/python3.4.1/bin/python3 py-3.4.1 workon py-3.4.1 pip install flask pip install pygmentsOnce that was done to run the Flask app:
python app.py & disown