Andrey Hihlovskiy

Professional blog on groovy, gradle, Java, Javascript and other stuff.

Deploying Spring Boot Groovy scripts as a Jar file in Cloud Foundry

Tomás Lin's Programming Brain Dump

This post is a step by step guide on deploying a Spring Boot application on Cloud Foundry using the spring jar feature introduced in 1.0.0.RC2.

If you read the Cloud Foundry documentation, they would claim that the proper way to deploy Spring Boot Groovy scripts is via:

spring grab *.groovy
cf push

Unfortunately, this approach is almost as effective as Sex Panther Cologne.

It fails badly when you try to include other starter packs, such as the websocket starter pack.

Using the jar approach outlined here allows us to overcome the errors that you might encounter in Cloud Foundry otherwise.

View original post 354 more words

Gretty version 0.0.12 is out!

Gretty is a feature-rich gradle plugin for running web-applications under jetty.

New in version 0.0.12: support of integration tests.

Full sources, documentation and examples:

Gretty 0.0.12 is also available on maven central under group “org.akhikhl.gretty”.

Gretty version 0.0.11 is out!

Gretty is a feature-rich gradle plugin for running web-applications under jetty.

New in version 0.0.11: now it’s possible to specify logback configuration file (.groovy or .xml) via plugin extension property “logbackConfigFile”.

Full sources, documentation and examples:

Gretty 0.0.11 is also available on maven central under group “org.akhikhl.gretty”.

AngularJS + JSTree = awesome!

I created an example of ajax-driven jstree wrapped as angularjs directive, backed by ratpack:
Enjoy 🙂

Serving jokes locally with Ratpack and MongoDB

Very entertaining way to learn Ratpack and MongoDB!

Stuff I've learned recently...

In twoprevious posts, I discussed applications I created that were simple client-side front ends for the Internet Chuck Norris Database (ICNDB), located at This post gives the details of the local server I created, using Groovy, MongoDB, and the cool Ratpack project (note new URL). The earlier posts contained parts of that app, but since then I’ve updated it to the latest version of Ratpack, revised the gradle build file accordingly, added a couple of integration tests, and checked the whole thing into GitHub.

I often use ICNDB in my Groovy presentations, because it’s easy to access, returns a simple JSON object, and is rather amusing.

(This, by the way, is in direct contrast to Mr. Norris himself, whose politics are somewhat to the right of Attila the Hun. Still, I only care about the jokes themselves, which are pretty funny.)

Accessing the site is…

View original post 1,376 more words

Rooty v0.0.1 is out!

Rooty v0.0.1 is out!
Simplify your multi-project #gradle setups with this plugin!
Sources and documentation available at:
Also in maven central!

Mavenize version 0.0.1 is out!

I release Mavenize version 0.0.1 – jar library and gradle plugin for mavenizing OSGi bundles!

Sources and documentation available at:

Soon in maven central!

Gitbucket – your own github-like web-application without a hassle

Meet gitbucket – your own github-like web-application, requiring minimum configuration:


  • out-of-the-box HTTP access to git repositories (in browser and from command line)
  • web-based user management
  • web-based repository management
  • issue management, pull-requests, wiki, etc.

Not yet implemented features:

  • out-of-the-box SSH support (or integration with SSH-supporting solutions like gitolite)
  • online editing

My impression: this is very interesting application that I will certainly use as soon as missing features get implemented.

gradle-onejar plugin version 0.0.5 is out!

I just released gradle-onejar plugin version 0.0.5!

The sources are available at

gradle-onejar is a gradle plugin, automating assembly of java application to a single runnable jar.

The plugin is available in maven central under coordinates “org.akhikhl.gradle-onejar:gradle-onejar:0.0.5”

It has many configuration options, described in online documentation.

Your comments and suggestions are welcome – here and at github!