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/griffonType '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.