The is a template for a web app: Java with Maven, JavaScript with Grunt.
It consists of the following:
- Maven project which produces war file
- Maven dependencies added for: junit, commons-lang3, guava-13
- The web app directory includes a JavaScript directory (js)
- Third-party JS files are in js/vendor, include: jquery, underscore.js, namespace.js, tstring.js
- Jasmine specs in test/js/jasmine-specs
- grunt.js file configured to lint all the js code and run jasmine specs.
Java Dependencies:
- JDK 1.6
- Maven 3
JavaScript Dependencies:
- node.js
- phantom.js: for running jasmine specs in headless browser
- grunt.js
Make sure that all dependencies are installed on your machine before you start running the app.
To build with maven, at the command line in your project's directory:
mvn clean package
To run with grunt, at the command line in your project's directory:
run this once:
npm install grunt-jasmine-runner
then run
grunt
to lint and run your jasmine specs
To run jasmine in a browser:
grunt jasmine-server