読者です 読者をやめる 読者になる 読者になる

ゲンゾウ用ポストイット

Java、Groovy、Linux関連の備忘録

HudsonのGriffonプラグイン

HudsonでGriffonをビルドしようと奮闘しているところで、JUGGUG関西支部長id:kiy0takaさんが作ってくれました。


勝手に転載させてもらいます。(いいかな?)


http://dl.dropbox.com/u/718715/griffon.hpi

使い方(id:kiy0takaさんより)

# Hudson Grails Pluginと同じ使い方です。

1.「Hudsonの管理」ー「プラグインの管理」ー「高度な設定タブ」の
プラグインのアップロードでダウンロードしたgriffon.hpiをアップロードする。

2. Hudsonの再起動

3.「Hudsonの管理」ー「システムの設定」に「Griffon Builder」という項目があるはず。
「追加」ボタンクリックで適当な名前とGRIFFON_HOMEのパスを設定して一番下の「保存」

4. 新規ジョブ(フリースタイル)のビルド手順の追加で「Build With Griffon」を選択
Griffon Installationに3. で設定したGriffonを選択してTargetsを指定「clean test-app」みたいな感じで。それ以外の項目はオプションです。

試してみた

この通りに素直にやってみた。
Targetsにもまったく同様の"clean test-app"を設定。

しかし、以下のシェルスクリプトを記述した時とまったく同様のエラーが表示されてしまう。

#cd $WORKSPACE/$JOB_NAME
#$GRIFFON_HOME/bin/griffon test-app
java.lang.InternalError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.
	at java.security.AccessController.doPrivileged(Native Method)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:169)
	at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:68)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:169)
	at java.awt.Toolkit$2.run(Toolkit.java:834)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:826)
	at java.awt.Toolkit.getEventQueue(Toolkit.java:1676)
	at java.awt.EventQueue.isDispatchThread(EventQueue.java:807)
	at javax.swing.SwingUtilities.isEventDispatchThread(SwingUtilities.java:1336)
	at javax.swing.SwingUtilities$isEventDispatchThread.call(Unknown Source)
	at _GriffonBootstrap_groovy$_run_closure1.doCall(_GriffonBootstrap_groovy:90)
	at _GriffonBootstrap_groovy$_run_closure1.doCall(_GriffonBootstrap_groovy)
	at _GriffonBootstrap_groovy$_run_closure4.doCall(_GriffonBootstrap_groovy:156)
	at _GriffonBootstrap_groovy$_run_closure4.doCall(_GriffonBootstrap_groovy)
	at _GriffonTest_groovy$_run_closure7.doCall(_GriffonTest_groovy:272)
	at _GriffonTest_groovy$_run_closure7.doCall(_GriffonTest_groovy)
	at _GriffonTest_groovy$_run_closure1_closure18.doCall(_GriffonTest_groovy:130)
	at _GriffonTest_groovy$_run_closure1.doCall(_GriffonTest_groovy:116)
	at _GriffonTest_groovy$_run_closure1.doCall(_GriffonTest_groovy)
	at TestApp$_run_closure1.doCall(TestApp:46)
	at TestApp$_run_closure1.doCall(TestApp)
	at gant.Gant$_dispatch_closure4.doCall(Gant.groovy:306)
	at gant.Gant.dispatch(Gant.groovy:316)
	at gant.Gant.this$2$dispatch(Gant.groovy)
	at gant.Gant.invokeMethod(Gant.groovy)
	at gant.Gant.processTargets(Gant.groovy:446)
	at gant.Gant.processTargets(Gant.groovy:430)


Griffonプロジェクト直下のtestディレクトリ以下に配置した単体テストコードは正常に動作するようですが、それ以降で落ちてしまう。
X11がどうのこうのと出ているので、動かしているubuntu上での問題かもしれない。
そもそもHudsonのビルドジョブでGUIアプリのテストするなってことなのかもしれない。

環境変数DISPLAY=:0.0は、NetBeans 6.0.1 for Solaris x86 : 千年の風に吹かれて を参考にさせていただいて追加した。これを設定する前は以下のようなエラーが表示されていた。

Error executing script TestApp: Failed to create component for 'application' reason: java.awt.HeadlessException: 
No X11 DISPLAY variable was set, but this program performed an operation which requires it.

明日も終電なのでもう寝て、明日再チャレンジする。

広告を非表示にする