org.eclipse.debug.core.launchConfigurationTypes 拡張ポイント

昨日の Program debug and launch support を読んでいます。

とりあえず、launchConfigurationTypes 拡張ポイントを使うことで、起動の選択肢が作れるらしいということが分かりました。

さっそく、やってみました。

MANIFEST エディターで launchConfigurationTypes を追加して、ID と name を入力してみました。

launchConfigurationTypes

で、実行。あれっ、追加されていない。

おかしいと思って、ドキュメントにある例と plugin.xml を見比べてみたら...

ドキュメントに出ていた plugin.xml

<extension point = "org.eclipse.debug.core.launchConfigurationTypes">
   <launchConfigurationType
   	   id="org.eclipse.jdt.launching.localJavaApplication"
	   name="%localJavaApplication"
	   delegate="org.eclipse.jdt.internal.launching.JavaLocalApplicationLaunchConfigurationDelegate"
	   modes= "run, debug">
   </launchConfigurationType>
</extension>

WRPE Plug-in の plugin.xml

   <extension
         id="jp.gr.java_conf.skrb.lg3d.wrpe.launchConfigutaionType"
         name="LG3D Application"
         point="org.eclipse.debug.core.launchConfigurationTypes">
   </extension>

全然違いました ^^;; id や name は launchConfigurationTypes に記述するのではなくて、そこに追加する launchConfigurationType にするのでした。

まずい、基本的なところを間違ってしまった ^^;;;;;;;;;;

ここらへんは actionSets と actionSet の関係と同じですね。

さて、気を取り直して、書き直してみました。

launchConfigurationType

plugin.xml は次のようになりました。

   <extension
         point="org.eclipse.debug.core.launchConfigurationTypes">
      <launchConfigurationType
            delegate="org.eclipse.jdt.internal.launching.JavaLocalApplicationLaunchConfigurationDelegate"
            id="jp.gr.java_conf.skrb.lg3d.wrpe.launchConfigutaionType"
            modes="run, debug"
            name="LG3D Application"/>
   </extension>

これで大丈夫でしょう。ということで、実行!!!

Run

おぉ、ちゃんと出た。

でも、LG3D Application を選択すると...

Error

orz...

ところで、log を見ろと書いてありますけど、この log ってどこにあるのでしょうか???

まぁ、それはそれでいいとして、何となく気になるところがあったので調べてみました。それは delegate に書いてある JavaLocalApplicationLaunchConfigurationDelegate クラスです。

やっぱり、イヤな予感はあたっていました。なんとなくそれらしいパッケージが書いてあるので本当にあるクラスかと思っていたのですが、ないようです ^^;;

やっぱりここに記述するクラスは自分で作らないとダメですね。

というわけで、ドキュメントの続きを読むことにしよう。って、全部読んでいないのか! > 自分