When looking at the JSONPrettyFormatter failure on Windows, I originally thought; "Since Cucumber-JVM both on Windows and *nix support '/' in feature path arguments on the command line and Cucumber.Options, why not use '/' in the URI sent to formatters on all platforms?"
Reading up on URI:s revealed that URI:s always use '/' on all platforms, it is only file paths that on Windows use '' (http://stackoverflow.com/questions/1589930/so-what-is-the-right-direction-of-the-paths-slash-or-under-windows, http://blogs.msdn.com/b/ie/archive/2006/12/06/file-uris-in-windows.aspx)
Therefore make sure to the featureURI argument sent to the Gherkin parser when creating CucumberFeature is an URI using '/' and not a file path (which on Windows uses '').
This PR has been tested successfully (mvn clean package) on both:
Use uri instead of path in CucumberFeature
On Windows paths use '\' as separator, but uri:s use '/'. On other
platforms both paths and uri:s use '/' as separator. Make sure that
paths are converted to uri:s when CucumberFeatures are created.