Starting with Griffon 0.9.5 there's a new command line tool at your disposal: the Griffon Shell or griffonsh for short. This is an interactive shell that can be kept running in the background, this way you don't pay the penalty of starting a new JVM every time you invoke a command. Other benefits are the bypass of dependency resolution if dependencies have not changed from the last command invocation. Here's a sample usage session:

$ griffonsh
Welcome to Griffon 0.9.5-rc2 - http://griffon.codehaus.org/
Licensed under Apache Standard License 2.0
Griffon home is set to: /usr/local/griffon

Type 'exit' or ^D to terminate this interactive shell

griffon> compile Resolving dependencies… Dependencies resolved in 903ms. Environment set to development Resolving plugin dependencies … Plugin dependencies resolved in 1502 ms. [mkdir] Created dir: /Users/joe/.griffon/0.9.5-rc2/projects/sample/classes/cli [mkdir] Created dir: /Users/joe/.griffon/0.9.5-rc2/projects/sample/classes/main [mkdir] Created dir: /Users/joe/.griffon/0.9.5-rc2/projects/sample/classes/test [mkdir] Created dir: /Users/joe/.griffon/0.9.5-rc2/projects/sample/test-classes [mkdir] Created dir: /Users/joe/.griffon/0.9.5-rc2/projects/sample/test-resources [mkdir] Created dir: /Users/joe/.griffon/0.9.5-rc2/projects/sample/resources [griffonc] Compiling 8 source files to /Users/joe/.griffon/0.9.5-rc2/projects/sample/classes/main [griffonc] Compiling 4 source files to /Users/joe/.griffon/0.9.5-rc2/projects/sample/classes/main griffon> run-app Resolving dependencies… Dependencies resolved in 1ms. [mkdir] Created dir: /Users/joe/.griffon/0.9.5-rc2/projects/sample/resources/griffon-app/i18n [mkdir] Created dir: /Users/joe/.griffon/0.9.5-rc2/projects/sample/resources/griffon-app/resources [copy] Copying 1 file to /Users/joe/.griffon/0.9.5-rc2/projects/sample/resources/griffon-app/i18n [copy] Copying 8 files to /Users/joe/.griffon/0.9.5-rc2/projects/sample/resources/griffon-app/resources [copy] Copying 1 file to /Users/joe/.griffon/0.9.5-rc2/projects/sample/classes/main [copy] Copying 11 files to /Users/joe/.griffon/0.9.5-rc2/projects/sample/resources [copy] Copied 8 empty directories to 8 empty directories under /Users/joe/.griffon/0.9.5-rc2/projects/sample/resources [copy] Copying 1 file to /projects/sample/staging [copy] Copying 1 file to /projects/sample/staging [copy] Copying 1 file to /projects/sample/staging [copy] Copying 1 file to /projects/sample/staging [copy] Copying 1 file to /projects/sample/staging [copy] Copying 1 file to /projects/sample/staging [copy] Copying 1 file to /projects/sample/staging [copy] Copying 1 file to /projects/sample/staging Launching application … 2012-02-07 17:27:11,007 [main] INFO griffon.swing.SwingApplication - Initializing all startup groups: [sample] 2012-02-07 17:27:16,555 [AWT-EventQueue-0] INFO griffon.swing.SwingApplication - Shutdown is in process [delete] Deleting directory /projects/sample/staging/macosx64 [delete] Deleting directory /projects/sample/staging/macosx griffon> clean Resolving dependencies… Dependencies resolved in 1ms. [delete] Deleting directory /Users/joe/.griffon/0.9.5-rc2/projects/sample/classes/cli [delete] Deleting directory /Users/joe/.griffon/0.9.5-rc2/projects/sample/classes/main [delete] Deleting directory /Users/joe/.griffon/0.9.5-rc2/projects/sample/classes/test [delete] Deleting directory /Users/joe/.griffon/0.9.5-rc2/projects/sample/test-classes [delete] Deleting directory /Users/joe/.griffon/0.9.5-rc2/projects/sample/test-resources [delete] Deleting directory /Users/joe/.griffon/0.9.5-rc2/projects/sample/resources [delete] Deleting directory /projects/sample/staging griffon>

This command environment accepts all commands available to the griffon command (except those that let you create a new project) plus a few more that are unique to the griffon shell. Please refer to the help command for more information on those extra commands.