リアル幻獣も叫んだGriffon 1.0が登場したので動かしてみた
とりあえず、WindowsでGriffon 1.0のサンプルを動かしてみた。
実行環境
JAVAFX_HOME=c:\usr\opt\JavaFX\javaFXSDK2.1 JAVA_HOME=C:\usr\opt\java\jdk1.7.0_04
Griffonダウンロード
Griffonの環境設定
解凍
griffon-1.0.0-bin.zip を解凍
READMEが重複してるって警告がでたんだけど・・・
環境変数の設定
GRIFFON_HOME=C:\usr\opt\Griffon\griffon-1.0.0
PATHに GRIFFON_HOME%\bin を追加
躓きそうなところの対処
[twitter:@kazuchika]、[twitter:@kimukou2628]、[twitter:@kiy0taka] の3人で、Twitter上でわいわいガヤガヤやってた。
それがここにまとまってるので、これを見て対処してみる。
griffon 1.0.0 でのGroovyFX周りの呟きメモ(Mac)
griffon 1.0.0 でのGroovyFX周りの呟きメモ(Win)
Windowsの場合は、with JavaFX 2.1 でも、JDKのインストーラ終了後にJavaFXのインストーラが起動して別にインストールする。
jfxrt.jarも%JAVAFX_HOME%\rt\lib\jfxrt.jar にある。
プラグインのインストール
バッチファイルにするなら、call つけてね。
GroovyFxPadの実行
[C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyFxPad]griffon run-app Welcome to Griffon 1.0.0 - http://griffon-framework.org/ Licensed under Apache Standard License 2.0 Griffon home is set to: C:\usr\opt\Griffon\griffon-1.0.0 Base Directory: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyFxPad Running script C:\usr\opt\Griffon\griffon-1.0.0\scripts\RunApp.groovy Resolving dependencies... Dependencies resolved in 811ms. Environment set to development Resolving framework plugin dependencies ... Framework plugin dependencies resolved in 696 ms. Resolving plugin dependencies ... Plugin dependencies resolved in 3158 ms. Launching application ... 2012-06-09 17:29:17,453 [main] INFO griffon.swing.SwingApplication - Initializing all startup groups: [ide] Device "Intel(R) HD Graphics 3000" (\\.\DISPLAY1) initialization failed : WARNING: bad driver version detected, device disabled. Please update your driver to at least version 8.15.10.2302 Device "Intel(R) HD Graphics 3000" (\\.\DISPLAY2) initialization failed : WARNING: bad driver version detected, device disabled. Please update your driver to at least version 8.15.10.2302
SwingPadの実行
トラブルチューティングに書いたプラグインをインスールをして起動
その他のサンプル
@kimukou2628 からコメントあり。ありがとうございます!!
- Greetは起動するけど、ログインボタンをクリックでエラー
o( ̄ー ̄;)ゞううむ
もっと具体的な話は、第 7 回 JavaFX 勉強会 LT: Griffon での JavaFX 2.1 利用事例
で、[twitter:@kimukou2628] がきっと話してくれるだろう。
トラブルシューティング
のGroovyFXPadを実行でMISSING
- 現象
[C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyFxPad]griffon run-app Welcome to Griffon 1.0.0 - http://griffon-framework.org/ Licensed under Apache Standard License 2.0 Griffon home is set to: C:\usr\opt\Griffon\griffon-1.0.0 It looks like you're running Griffon 1.0.0 for the first time Please wait a few moments while Griffon configures itself. [copy] Copying 1 resource to C:\Users\ORANGE~1\AppData\Local\Temp\griffon-bundles [unjar] Expanding: C:\Users\ORANGE~1\AppData\Local\Temp\griffon-bundles\griffon-default-bundles.jar into C:\Users\ORANGE~1\AppData\Local\Temp\griffon-bundles Uploading plugin griffon-swing-1.0.0-release.zip to griffon-local Uploading archetype griffon-jumpstart-1.3-release.zip to griffon-local Uploading archetype griffon-presentation-1.1-release.zip to griffon-local Uploading archetype griffon-swt-1.0-release.zip to griffon-local Installing archetype jumpstart-1.3 Software license of jumpstart-1.3 is 'Apache Software License 2.0' [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\archetypes\jumpstart-1.3 [unzip] Expanding: C:\Users\orangeclover\.griffon\repository\archetypes\jumpstart\1.3\griffon-jumpstart-1.3.zip into C:\Users\orangeclover\.griffon\1.0.0\archetypes\jumpstart-1.3 Installed archetype 'jumpstart-1.3' in C:\Users\orangeclover\.griffon\1.0.0\archetypes/jumpstart-1.3 Installing archetype presentation-1.1 Software license of presentation-1.1 is 'Apache Software License 2.0' [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\archetypes\presentation-1.1 [unzip] Expanding: C:\Users\orangeclover\.griffon\repository\archetypes\presentation\1.1\griffon-presentation-1.1.zip into C:\Users\orangeclover\.griffon\1.0.0\archetypes\presentation-1.1 Installed archetype 'presentation-1.1' in C:\Users\orangeclover\.griffon\1.0.0\archetypes/presentation-1.1 Installing archetype swt-1.0 Software license of swt-1.0 is 'Apache Software License 2.0' [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\archetypes\swt-1.0 [unzip] Expanding: C:\Users\orangeclover\.griffon\repository\archetypes\swt\1.0\griffon-swt-1.0.zip into C:\Users\orangeclover\.griffon\1.0.0\archetypes\swt-1.0 Installed archetype 'swt-1.0' in C:\Users\orangeclover\.griffon\1.0.0\archetypes/swt-1.0 [delete] Deleting directory C:\Users\ORANGE~1\AppData\Local\Temp\griffon-bundles Done. Base Directory: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyFxPad Running script C:\usr\opt\Griffon\griffon-1.0.0\scripts\RunApp.groovy Resolving dependencies... Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\ant-1.8.2.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\ant-launcher-1.8.2.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\ant-junit-1.8.2.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\jansi-1.7.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\jline-0.9.94.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\commons-io-2.1.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\commons-lang-2.6.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\commons-codec-1.6.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\commons-collections-3.2.1.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\commons-beanutils-1.8.0.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\httpcore-4.1.2.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\httpclient-4.1.2.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\jsch-0.1.45.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\jzlib-1.0.7.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\http-builder-0.5.2.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\xercesImpl-2.9.1.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\ezmorph-1.0.6.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\xml-resolver-1.2.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\dist\griffon-cli-1.0.0.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\dist\griffon-scripts-1.0.0.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\dist\griffon-rt-1.0.0.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\org.springframework.core-3.1.1.RELEASE.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\org.springframework.beans-3.1.1.RELEASE.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\org.springframework.context-3.1.1.RELEASE.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\org.springframework.context.support-3.1.1.RELEASE.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\json-lib-2.4-jdk15.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\log4j-1.2.16.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\slf4j-api-1.6.4.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\slf4j-log4j12-1.6.4.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\jcl-over-slf4j-1.6.4.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\jul-to-slf4j-1.6.4.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\groovy-all-1.8.6.jar Download complete. Dependencies resolved in 905ms. Environment set to development Resolving framework plugin dependencies ... Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\junit-4.10.jar Download complete. Downloading: C:\usr\opt\Griffon\griffon-1.0.0\lib\hamcrest-core-1.1.jar Download complete. Framework plugin dependencies resolved in 809 ms. Resolving plugin dependencies ... Some dependencies have conflicts. -= INSTALLED =- -= MISSING =- + installer-0.6 from griffon-central + swingx-builder-0.6 from griffon-central ! dialogs-0.3 from griffon-central ! glazedlists-0.9 from griffon-central ! swing-0.9.5 from griffon-central ! miglayout-0.4 from griffon-central ! swing-0.9.5 from griffon-central ! actions-0.4 from griffon-central + i18n-support-0.2 from griffon-central ! swing-0.9.5 from griffon-central + jide-builder-0.7 from griffon-central ! syntaxtext-0.2 from griffon-central ! swing-0.9.5 from griffon-central ! swing-1.0.0 from griffon-local ! silkicons-0.3 from griffon-central ! swing-0.9.5 from griffon-central + groovyfx-0.6 from griffon-central Could not resolve plugin dependencies.
- 原因
- プラグインが合っていない
のGroovyFXPadを実行でNoClassDefFoundError: javafx.collections.ObservableSet
- 現象
Launching application ... 2012-06-09 17:01:19,097 [main] INFO griffon.swing.SwingApplication - Initializing all startup groups: [ide] 2012-06-09 17:01:22,864 [main] ERROR griffon.util.GriffonExceptionHandler - Uncaught Exception org.codehaus.groovy.runtime.InvokerInvocationException: java.lang.NoClassDefFoundError: javafx.collections.ObservableSet at org.codehaus.griffon.runtime.core.DefaultMVCGroupManager.initializeMembers(DefaultMVCGroupManager.java:234) at org.codehaus.griffon.runtime.core.DefaultMVCGroupManager.buildMVCGroup(DefaultMVCGroupManager.java:147) at org.codehaus.griffon.runtime.core.AbstractMVCGroupManager.createMVCGroup(AbstractMVCGroupManager.java:238) at org.codehaus.griffon.runtime.core.AbstractMVCGroupManager.createMVCGroup(AbstractMVCGroupManager.java:186) at org.codehaus.griffon.runtime.core.AbstractGriffonApplication.createMVCGroup(AbstractGriffonApplication.java:474) at org.codehaus.griffon.runtime.core.AbstractGriffonApplication.startup(AbstractGriffonApplication.java:313) at griffon.swing.AbstractSwingGriffonApplication.realize(AbstractSwingGriffonApplication.java:78) at griffon.swing.AbstractSwingGriffonApplication.run(AbstractSwingGriffonApplication.java:132) at griffon.swing.SwingApplication.main(SwingApplication.java:36) Caused by: java.lang.NoClassDefFoundError: javafx.collections.ObservableSet at groovyx.javafx.GroovyFXEnhancer$_enhanceClasses_closure1_closure32.class$(GroovyFXEnhancer.groovy) at groovyx.javafx.GroovyFXEnhancer$_enhanceClasses_closure1_closure32.$get$$class$javafx$collections$ObservableSet(GroovyFXEnhancer.groovy) at groovyx.javafx.GroovyFXEnhancer$_enhanceClasses_closure1_closure32.doCall(GroovyFXEnhancer.groovy:51) at groovyx.javafx.GroovyFXEnhancer.enhanceClasses(GroovyFXEnhancer.groovy:58) at groovyx.javafx.GroovyFXEnhancer$enhanceClasses.call(Unknown Source) at groovyx.javafx.SceneGraphBuilder.<clinit>(SceneGraphBuilder.groovy:80) at griffon.samples.groovyfxpad.IdeController.class$(IdeController.groovy) at griffon.samples.groovyfxpad.IdeController.$get$$class$groovyx$javafx$SceneGraphBuilder(IdeController.groovy) at griffon.samples.groovyfxpad.IdeController.mvcGroupInit(IdeController.groovy:54) ... 9 more
- 原因
- JavaFX2.0.Xになっているため
- 対処
- JavaSE 7u4 with JavaFX 2.1 をダウンロード
FontPicker
[C:\usr\opt\Griffon\griffon-1.0.0\samples\FontPicker]griffon run-app Welcome to Griffon 1.0.0 - http://griffon-framework.org/ Licensed under Apache Standard License 2.0 Griffon home is set to: C:\usr\opt\Griffon\griffon-1.0.0 Base Directory: C:\usr\opt\Griffon\griffon-1.0.0\samples\FontPicker Running script C:\usr\opt\Griffon\griffon-1.0.0\scripts\RunApp.groovy Resolving dependencies... Dependencies resolved in 616ms. Environment set to development Resolving framework plugin dependencies ... Framework plugin dependencies resolved in 835 ms. Resolving plugin dependencies ... Some dependencies have conflicts. -= INSTALLED =- -= MISSING =- ! miglayout-0.4 from griffon-local ! swing-0.9.5 from griffon-local ! swing-1.0.0 from griffon-local Could not resolve plugin dependencies.
- 原因
プラグインがあっていない
- 対処
プラグインをインストール
Enables Swing support
griffon install-plugin http://artifacts.griffon-framework.org/repository/plugins/swing/1.0.0/griffon-swing-1.0.0.zip
SwingPadの実行
[C:\usr\opt\Griffon\griffon-1.0.0\samples\SwingPad]griffon run-app Welcome to Griffon 1.0.0 - http://griffon-framework.org/ Licensed under Apache Standard License 2.0 Griffon home is set to: C:\usr\opt\Griffon\griffon-1.0.0 Base Directory: C:\usr\opt\Griffon\griffon-1.0.0\samples\SwingPad Running script C:\usr\opt\Griffon\griffon-1.0.0\scripts\RunApp.groovy Resolving dependencies... Dependencies resolved in 675ms. Environment set to development Resolving framework plugin dependencies ... Framework plugin dependencies resolved in 579 ms. Resolving plugin dependencies ... Some dependencies have conflicts. -= INSTALLED =- -= MISSING =- ! zonelayout-0.3 from griffon-central ! swing-0.9.5 from griffon-local + gfx-builder-0.7 from griffon-central ! dialogs-0.3 from griffon-central ! glazedlists-0.9 from griffon-local ! swing-0.9.5 from griffon-local ! miglayout-0.4 from griffon-local ! swing-0.9.5 from griffon-local ! actions-0.4 from griffon-local + i18n-support-0.2 from griffon-local ! swing-0.9.5 from griffon-local ! jxlayer-0.3 from griffon-central ! swing-0.9.5 from griffon-local ! riverlayout-0.3 from griffon-central ! swing-0.9.5 from griffon-local ! jexplose-0.3 from griffon-central ! swing-0.9.5 from griffon-local + swingx-builder-0.6 from griffon-central ! coverflow-0.6 from griffon-central ! swing-0.9.5 from griffon-local ! swing-1.0.0 from griffon-local + trident-builder-0.8 from griffon-central ! jgoodies-forms-0.5 from griffon-central ! swing-0.9.5 from griffon-local ! syntaxtext-0.2 from griffon-central ! swing-0.9.5 from griffon-local ! transitions-0.6 from griffon-central + trident-builder-0.8 from griffon-central ! swing-0.9.5 from griffon-local ! tray-builder-0.8 from griffon-central ! swing-0.9.5 from griffon-local ! designgridlayout-0.5 from griffon-central ! swing-0.9.5 from griffon-local + css-builder-0.9 from griffon-central ! silkicons-0.3 from griffon-central ! swing-0.9.5 from griffon-local + macwidgets-builder-0.6 from griffon-local ! crystalicons-0.3 from griffon-central ! swing-0.9.5 from griffon-local + installer-0.6 from griffon-central + jide-builder-0.7 from griffon-central ! jbusycomponent-0.6 from griffon-central ! jxlayer-0.3 from griffon-central ! swing-0.9.5 from griffon-local + swingx-builder-0.6 from griffon-central Could not resolve plugin dependencies.
- 原因
プラグインがあってない
- 対処
griffon install-plugin zonelayout
GroovyFxPadで書いたプラグインをインストールしてなければ
それもインストール。
GroovyEditの実行
[C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit]griffon run-app Welcome to Griffon 1.0.0 - http://griffon-framework.org/ Licensed under Apache Standard License 2.0 Griffon home is set to: C:\usr\opt\Griffon\griffon-1.0.0 Base Directory: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit Running script C:\usr\opt\Griffon\griffon-1.0.0\scripts\RunApp.groovy Resolving dependencies... Dependencies resolved in 721ms. Environment set to development Resolving framework plugin dependencies ... Framework plugin dependencies resolved in 790 ms. Resolving plugin dependencies ... Software license of swing-1.0.0 is 'Apache Software License 2.0' ... [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\plugins\swing-1.0.0 [unzip] Expanding: C:\Users\orangeclover\.griffon\repository\plugins\swing\1.0.0\griffon-swing-1.0.0.zip into C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\plugins\swing-1.0.0 Resolving plugin swing-1.0.0 JAR dependencies ... Executing swing-1.0.0 plugin post-install script ... [copy] Copying 1 resource to C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\swing-install-tmp [unjar] Expanding: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\swing-install-tmp\griffon-app-files.jar into C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\swing-install-tmp [delete] Deleting: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\swing-install-tmp\griffon-app-files.jar [delete] Deleting directory C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\swing-install-tmp Installed plugin 'swing-1.0.0' in C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\plugins/swing-1.0.0 Plugin dependencies resolved in 4550 ms. [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\classes\cli [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\classes\main [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\classes\test [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\test-classes [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\test-resources [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\resources [griffonc] Compiling 13 source files to C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\classes\main [griffonc] Compiling 3 source files to C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\classes\main [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\griffon-app\conf\dist [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\griffon-app\conf\dist\applet [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\griffon-app\conf\dist\jar [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\griffon-app\conf\dist\shared [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\griffon-app\conf\dist\webstart [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\griffon-app\conf\dist\zip [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\griffon-app\conf\metainf [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\lib [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\scripts [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\test\unit [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\resources\griffon-app\i18n [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\resources\griffon-app\resources [copy] Copying 1 file to C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\resources\griffon-app\i18n [copy] Copying 8 files to C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\resources\griffon-app\resources [copy] Copied 1 empty directory to 1 empty directory under C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\resources\griffon-app\resources [copy] Copying 1 file to C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\classes\main [copy] Copying 13 files to C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\resources [copy] Copied 9 empty directories to 8 empty directories under C:\Users\orangeclover\.griffon\1.0.0\projects\GroovyEdit\resources [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\staging [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\staging [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\staging [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\staging [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\staging [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\staging [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\staging [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\staging Launching application ... 2012-06-09 19:03:49,460 [main] ERROR griffon.util.GriffonExceptionHandler - Uncaught Exception java.lang.NullPointerException: Cannot get property 'document' on null object at groovyedit.GroovyEditModel$_closure1.doCall(GroovyEditModel.groovy:22) at $Proxy5.propertyChange(Unknown Source) at org.codehaus.griffon.runtime.core.AbstractGriffonModel.firePropertyChange(AbstractGriffonModel.java:72) at groovyedit.GroovyEditModel.setMvcId(GroovyEditModel.groovy) at org.codehaus.griffon.runtime.core.DefaultMVCGroupManager.fillReferencedProperties(DefaultMVCGroupManager.java:253) at org.codehaus.griffon.runtime.core.DefaultMVCGroupManager.buildMVCGroup(DefaultMVCGroupManager.java:143) at org.codehaus.griffon.runtime.core.AbstractMVCGroupManager.createMVCGroup(AbstractMVCGroupManager.java:238) at org.codehaus.griffon.runtime.core.AbstractMVCGroupManager.createMVCGroup(AbstractMVCGroupManager.java:186) at org.codehaus.griffon.runtime.core.AbstractGriffonApplication.createMVCGroup(AbstractGriffonApplication.java:474) at org.codehaus.griffon.runtime.core.AbstractGriffonApplication.startup(AbstractGriffonApplication.java:313) at griffon.swing.AbstractSwingGriffonApplication.realize(AbstractSwingGriffonApplication.java:78) at griffon.swing.AbstractSwingGriffonApplication.run(AbstractSwingGriffonApplication.java:132) at griffon.swing.SwingApplication.main(SwingApplication.java:36)
わからん。
コードが多分おかしいので、ここら辺は多分kiy0takaさんレベルじゃないと
パッと直せないんだろうなと(これプラグイン使っていないので
といいつつサクッと直してしまう、@kimukou2628
- 原因
app.models[e.newValue].document が null になっている。
- 対処
- ?. (nullセーフナビゲーション プログラミングGROOVY p92)でNullPointerExeceptionが発生しないようにして取得
- null だったら、documento生成
C:\usr\opt\Griffon\griffon-1.0.0\samples\GroovyEdit\griffon-app\models\groovyedit\GroovyEditModel.groovy
--- 修正前 +++ 修正後 @@ -19,7 +19,8 @@ private mvcUpdater = { e -> Document document = null if(e.newValue) { - document = app.models[e.newValue].document + document = app.models[e.newValue]?.document + if(document==null)document = new Document() } else { document = new Document() }
未解決
Greetの実行
[C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet]griffon run-app Welcome to Griffon 1.0.0 - http://griffon-framework.org/ Licensed under Apache Standard License 2.0 Griffon home is set to: C:\usr\opt\Griffon\griffon-1.0.0 Base Directory: C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet Running script C:\usr\opt\Griffon\griffon-1.0.0\scripts\RunApp.groovy Resolving dependencies... Dependencies resolved in 513ms. Environment set to development Resolving framework plugin dependencies ... Framework plugin dependencies resolved in 603 ms. Resolving plugin dependencies ... Software license of swing-1.0.0 is 'Apache Software License 2.0' ... [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\plugins\swing-1.0.0 [unzip] Expanding: C:\Users\orangeclover\.griffon\repository\plugins\swing\1.0.0\griffon-swing-1.0.0.zip into C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\plugins\swing-1.0.0 Resolving plugin swing-1.0.0 JAR dependencies ... Executing swing-1.0.0 plugin post-install script ... [copy] Copying 1 resource to C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\swing-install-tmp [unjar] Expanding: C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\swing-install-tmp\griffon-app-files.jar into C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\swing-install-tmp [delete] Deleting: C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\swing-install-tmp\griffon-app-files.jar [delete] Deleting directory C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\swing-install-tmp Installed plugin 'swing-1.0.0' in C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\plugins/swing-1.0.0 Plugin dependencies resolved in 4509 ms. [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\classes\cli [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\classes\main [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\classes\test [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\test-classes [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\test-resources [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\resources [griffonc] Compiling 27 source files to C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\classes\main [griffonc] Threading injection feature disabled. [griffonc] 注意:C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\src\main\greet\DelayedImageIcon.javaの操作は、未チェックまたは安全ではありません。 [griffonc] 注意:詳細は、-Xlint:uncheckedオプションを指定して再コンパイルしてください。 [griffonc] Compiling 3 source files to C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\classes\main [griffonc] Threading injection feature disabled. [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\griffon-app\conf\keys [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\griffon-app\conf\dist [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\griffon-app\conf\dist\applet [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\griffon-app\conf\dist\jar [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\griffon-app\conf\dist\shared [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\griffon-app\conf\dist\webstart [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\griffon-app\conf\dist\zip [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\griffon-app\conf\metainf [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\lib [mkdir] Created dir: C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\scripts [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\resources\griffon-app\i18n [mkdir] Created dir: C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\resources\griffon-app\resources [copy] Copying 1 file to C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\resources\griffon-app\i18n [copy] Copying 13 files to C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\resources\griffon-app\resources [copy] Copied 1 empty directory to 1 empty directory under C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\resources\griffon-app\resources [copy] Copying 1 file to C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\classes\main [copy] Copying 13 files to C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\resources [copy] Copied 9 empty directories to 9 empty directories under C:\Users\orangeclover\.griffon\1.0.0\projects\Greet\resources [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\staging [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\staging [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\staging [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\staging [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\staging [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\staging [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\staging [copy] Copying 1 file to C:\usr\opt\Griffon\griffon-1.0.0\samples\Greet\staging Launching application ... 2012-06-09 19:04:54,865 [main] DEBUG griffon.app.view.greet.GreetView - Upgrading MetaClass to groovy.lang.ExpandoMetaClass@292bdb00[class greet.GreetView] 2012-06-09 19:04:55,164 [main] DEBUG griffon.app.view.greet.LoginPaneView - Upgrading MetaClass to groovy.lang.ExpandoMetaClass@19707bb9[class greet.LoginPaneView] java.io.IOException: Server returned HTTP response code: 401 for URL: http://twitter.com/account/verify_credentials.xml at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1615) at java.net.URL.openStream(URL.java:1035) at java_net_URL$openStream.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:112) at greet.MicroblogService.slurpAPIStream(MicroblogService.groovy:105) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047) at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:992) at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877) at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141) at greet.MicroblogService$_login_closure4.doCall(MicroblogService.groovy:122) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:226) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:52) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141) at greet.MicroblogService$_login_closure4.doCall(MicroblogService.groovy) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047) at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877) at groovy.lang.Closure.call(Closure.java:412) at groovy.lang.Closure.call(Closure.java:406) at java_util_concurrent_Callable$call.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:112) at greet.MicroblogService.withStatus(MicroblogService.groovy:82) at greet.MicroblogService$withStatus.callCurrent(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:145) at greet.MicroblogService.login(MicroblogService.groovy:116) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:226) at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.call(PogoMetaMethodSite.java:64) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120) at greet.LoginPaneController$_login_closure2.doCall(LoginPaneController.groovy:40) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1047) at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:921) at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877) at groovy.lang.Closure.call(Closure.java:412) at groovy.lang.Closure.call(Closure.java:406) at groovy.lang.Closure.run(Closure.java:490) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722)
ログインは未実装なの?
操作間違えてタイトル消して更新してしまった。
@kimukou2628 のコメントもそのきに消えてしまったようなので
本文に記載。
SwingPad)
GroovyFxPadを入れ済みならgriffon install-plugin zonelayout
の最初でつまずいているだけなのでそれでいけますよGroovyEdit)
コードが多分おかしいので、ここら辺は多分kiy0takaさんレベルじゃないと
パッと直せないんだろうなと(これプラグイン使っていないのでGreet)
これAtom時代のTwログインのままなんですね(今はTwitterはOAuth形式)。
でもTweegleやkiy0takaさんのGマガ連載で使っている
Twitter(4J)Pluginもあるんですが
griffonの仕様がコロコロ変わっているのでイベント割込の処とかがまだ未メンテで動かせないですgithubでsample自体も公開されていれば直す人はいそうですが。..