1 名前:デフォルトの名無しさん [04/04/09 22:24] 統合開発環境Eclipse用プラグイン開発に関する質問と回答です。 Eclipseの使い方や、プラグインの使い方は、 このスレでは扱いませんので、↓のほうへどうぞ。 pc5.2ch.net/test/read.cgi/tech/1076074293
792 名前:デフォルトの名無しさん mailto:sage [2008/07/26(土) 00:19:30 ] >>791 下のweb、誰か訳して…
793 名前:デフォルトの名無しさん mailto:sage [2008/07/26(土) 00:58:36 ] >>792 長いよ! せめて1文か2文くらいにしてくれ
794 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 17:12:16 ] 訳してとか書かれてるからドイツ語かと思ったら普通の英語じゃねーかww
795 名前:デフォルトの名無しさん [2008/07/27(日) 20:56:01 ] つまり、会社にしてみれば、日本人よりインド人のほうが 英語がわかるし、賃金も安く済むし優秀だということ。 オープンソースでこの流れは止まらない・・。
796 名前:デフォルトの名無しさん [2008/07/27(日) 22:24:10 ] JDTについて質問です。 ASTParserというのを使ってソースコードを読める事を知り、 さっそく使ってみるかと思ってEclipseにて import org.eclipse.jdt.core.dom.*; と打ってみました。補完も聞きませんし、そんなパッケージないよと言われました。 org.eclipseの段階で候補がありませんでした。 JDTは入ってると思うのですが、 どうやったら使えるようになるのでしょうか? 何か設定が必要なのでしょうか?
797 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 22:27:06 ] >>795 うぜぇぞ、自称SEw
798 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 22:27:56 ] >>795 人口が多いから比率的に優秀な奴も多くなる、21世紀はインド&中国の時代かもな。 「0(ゼロ)」はインドで発見されたことも有名な話だし。 だけど19までのインド式99(くく)はムダではないかと思う。 尤も19×19は囲碁の黒石と白石の合計で361と知ってた。10以上の2乗だけなら 121,144,169,×,225,256,×,×・・・まぁオレも×をあと3個覚えればOKだけど。
799 名前:デフォルトの名無しさん mailto:sage [2008/07/28(月) 02:11:37 ] >>796 プラグイン依存が正しく設定されていない
800 名前:デフォルトの名無しさん mailto:sage [2008/07/28(月) 06:06:14 ] プラグイン依存て何ですか? JDTは入っています。設定というか解決ではないのですか? 設定って何。 あとPDEを入れようとしたら依存関係が解決出来ませんと言われました。 Europaでは依存するプラグインをすべて入れるボタンがあったと思いますが、Ganymedeにはありません。 どうすれば依存関係を解決出来ますか?
801 名前:デフォルトの名無しさん [2008/07/28(月) 08:20:50 ] 具体的にはこのようなエラーメッセージが出ます。 依存が自動で解決されません、バグでしょうか。 Cannot complete the request. See the details. Unsatisfied dependency: [org.eclipse.jpa.nl_ja 0.2.0.v20080720043402] requiredCapability: osgi.bundle/org.eclipse.jpa/[0.0.0,9.9.9) Unsatisfied dependency: [org.eclipse.jdt.apt.tests.nl_ja 0.2.0.v20080720043402] requiredCapability: osgi.bundle/org.eclipse.jdt.apt.tests/[0.0.0,9.9.9) Unsatisfied dependency: [org.eclipse.jdt.ui.tests.refactoring.nl_ja 0.2.0.v20080720043402] requiredCapability: osgi.bundle/org.eclipse.jdt.ui.tests.refactoring/[0.0.0,9.9.9) Unsatisfied dependency: [org.eclipse.core.expressions.tests.nl_ja 0.2.0.v20080720043402] requiredCapability: osgi.bundle/org.eclipse.core.expressions.tests/[0.0.0,9.9.9) Unsatisfied dependency: [org.eclipse.ant.tests.ui.nl_ja 0.2.0.v20080720043402] requiredCapability: osgi.bundle/org.eclipse.ant.tests.ui/[0.0.0,9.9.9) Unsatisfied dependency: [org.eclipse.ant.tests.core.nl_ja 0.2.0.v20080720043402] requiredCapability: osgi.bundle/org.eclipse.ant.tests.core/[0.0.0,9.9.9) ... いろいろ調べましたが、解決出来ません。 どうしたら解決出来るのでしょうか?
802 名前:デフォルトの名無しさん mailto:sage [2008/07/28(月) 09:09:51 ] 日本語化するとバグるようです。 再インスコして英語でやったらPDEがインストール出来ました。 しかしorg.eclipse.は使えません・・・なんででしょうか・・・早急にプログラミングして示す必要があるのですが。
803 名前:デフォルトの名無しさん mailto:sage [2008/07/28(月) 20:11:30 ] > 設定というか解決ではないのですか? > 設定って何。 ここは有償ソフトウェアのカスタマーサポート窓口ではない 偉そうな奴の質問に教える義務など無いことをお忘れなく 以降、関連する質問はスルーで
804 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 02:46:30 ] 796さんみたいな人は、ここよりも www-06.ibm.com/jp/software/rational/products/eclipse/elite/ を利用するのがいいんじゃないかなあとおもう。PDEもサポート範囲に入ってるし。
805 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 16:25:20 ] org.eclipse.*を認識させることすら出来ないということは プラグインを何一つ作れないということだよな。 ・・これはスルー検定1級レベルだ。
806 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 20:35:07 ] いや、別にcore.jarとか入れたらライブラリは使えるけど、 JDTのライブラリとかは自動で読むようになってないのかなっていう話。 お前らみたいな池沼プログラマと一緒にすんなや。
807 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 21:44:35 ] >core.jarとか入れたらライブラリは使える >JDTのライブラリとかは自動で読むようになってないのか これほどスルー力を試されたことは未だかつてあっただろうか。
808 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 22:08:15 ] >>807 どこか間違ってますか? org.eclipse.jdt.coreとかいうpluginをビルドパスに入れたら使えるようになりましたが、 他に方法があるんですか?
809 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 23:31:09 ] >ビルドパスに入れたら使えるようになりました オマエの「使える」ってどういう意味だよwww >お前らみたいな池沼プログラマと一緒にすんなや。 スキルも無ければモラルも無い。どうしようもないクズだな。
810 名前: mailto:sage [2008/07/29(火) 23:45:43 ] File->Importからバイナリープロジェクトとしてプラグインをインポートすればソースも見れるよ。
811 名前:デフォルトの名無しさん mailto:sage [2008/07/29(火) 23:46:49 ] >>810 だから? 見れるから何なの?
812 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 01:07:29 ] >>811 オマエに言ってんじゃないんだよ いちいち反応すんな、この自意識過剰ヤロー
813 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 21:26:13 ] >>791 びびった、ドイツ語かと思ったぜ。 英語だったか。不幸中の幸い?か。しかし時間がかかるぞ
814 名前:デフォルトの名無しさん mailto:sage [2008/07/31(木) 03:40:18 ] 久々の暑い夏だな。
815 名前:デフォルトの名無しさん [2008/08/06(水) 14:00:56 ] 動的にビューを追加(表示)することって出来ますか? 下記のようにビューがタブ表示になっているパースペクティブに、 ある条件(ボタン押下など)のときに ビュー"view.hoge3"が追加され、最上段に表示されるようにしたいのです。 public void createInitialLayout(IPageLayout layout) { String editorArea = layout.getEditorArea(); layout.setEditorAreaVisible(false); layout.setFixed(true); IFolderLayout folder = layout.createFolder("hoge", IPageLayout.LEFT, 1.0f, editorArea); folder.addView("view.hoge"); folder.addView("view.hoge2"); } folderをどっかにほぞんしておいて、後から追加するっていうのは なんだか良くないような気がしまして、 どなたか、良い解決方法をご存知でしたら 教えてくれよ。 頼むよ。
816 名前:815 [2008/08/06(水) 14:23:55 ] 自己レス >>815 getSite().getPage().showView("view.hoge3"); これでおk 追加で質問なんですが、 >>140-141 ,144-145,148 で話出てる Viewのタブの見た目を3.0っぽくする方法が分かりません。
817 名前:デフォルトの名無しさん mailto:sage [2008/08/06(水) 18:43:40 ] つ ttp://wiki.eclipse.org/RCP_Custom_Look_and_Feel
818 名前:デフォルトの名無しさん mailto:sage [2008/08/06(水) 19:46:05 ] >>816 PlatformUI.getPreferenceStore().setValue(IWorkbenchPreferenceConstants.SHOW_TRADITIONAL_STYLE_TABS,false); WorkBecchAdviserのinitialize()あたりでつかえ。 上の意味をPrefファイルに書いてもいい。
819 名前:815 [2008/08/07(木) 08:25:46 ] >>817-818 ありがとうできました。 とりあえず>>818 氏の方法でできたので、 >>817 氏の方法も試してみたいと思います。
820 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 10:40:41 ] plugin.xml にて popupMenus に action を追加しています。 メニューを表示すると、このactionの表示順序が記述した順序の逆になっています。 これは今後も絶対に逆になるものなのでしょうか? それとも表示順序を指定する方法があるのでしょうか? よろしくお願いします。
821 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 14:30:27 ] >>820 答にはなってないが、 IAction系は3.3で標準からはずれてる。 今から勉強するくらいなら、新しいの覚えた方がいい。 wiki.eclipse.org/Platform_Command_Framework 分かりにくいけど、分かっちゃえばずっと楽になる。
822 名前:820 mailto:sage [2008/08/09(土) 06:53:28 ] >>821 ありがとう 勉強してきます!!!
823 名前:デフォルトの名無しさん mailto:sage [2008/08/09(土) 12:27:38 ] たとえば、 「foo1」 「foo2」 「foo3」 というメニューにxxxを追加するとき、foo2をパスに指定すると、 「foo1」 「foo2」 「xxx」 「foo3」 となる。さらにfoo2のパスにyyyを追加すると、 「foo1」 「foo2」 「yyy」 「xxx」 「foo3」 となる。 逆になるというより、後に追加したメニューが単純に挿入されただけ。 xxxをパスに指定してyyyを追加すれば、 「foo1」 「foo2」 「xxx」 「yyy」 「foo3」 となる。
824 名前:820 mailto:sage [2008/08/10(日) 15:32:06 ] >>823 なるほど!! ありがとうございます!!
825 名前: mailto:sage [2008/08/10(日) 18:20:45 ] 3.3からpluginの作り方、どのくらい変わったの? 3.2対応って書いてる本買っちゃった。
826 名前:デフォルトの名無しさん mailto:sage [2008/08/10(日) 18:31:20 ] これくらい。 help.eclipse.org/ganymede/nav/2_3_0 ただあくまでも3.3までの正しい作法に従っていることが前提。
827 名前: mailto:sage [2008/08/10(日) 18:48:39 ] それは3.3から3.4への変更じゃないですか。 でも、同じようなタイトルで調べたらEclipse 3.3 Plug-in Migration Guideがあった。 ありがとうございます。
828 名前:デフォルトの名無しさん [2008/08/20(水) 15:21:11 ] 現在R3.3でAbstractTextEditorを継承したRCPのエディターを作っています。 ActionFactoryのSAVEとSAVE_ASをワークベンチに追加したのですが ファイルを編集すると SAVEボタンはEnableになるのですがSAVE_ASボタンはグレーアウトのままです。 どなたか原因おわかりの方おられましたらご教示お願いいたします。
829 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 16:12:35 ] isSaveAsAllowed()
830 名前:sage [2008/08/20(水) 16:16:19 ] >>829 さん ありがとうございました。
831 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 16:20:58 ] 間違えてageにしてしまった…
832 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 16:41:45 ] 解決したと思ったらSAVE_ASは有効になってもファイルダイアログが開きませんでした… 調べに行ってきます。
833 名前:デフォルトの名無しさん [2008/08/21(木) 18:05:55 ] 結局まだSAVE_ASのダイアログは開かずです…
834 名前:デフォルトの名無しさん mailto:sage [2008/08/21(木) 23:54:36 ] dev.eclipse.org/viewcvs/index.cgi/org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractDecoratedTextEditor.java?view=markup とかAbstractTextEditorのサブクラスのソース一通りよんでみ。
835 名前:デフォルトの名無しさん mailto:sage [2008/08/22(金) 06:34:20 ] あいまいな言葉で命令するだけで、コーディングを全自動で行うプラグインを開発中なんだけど 需要ありますか?
836 名前:デフォルトの名無しさん mailto:sage [2008/08/22(金) 18:07:16 ] >>835 要らない が、どの程度動くのかは見てみたいな
837 名前:デフォルトの名無しさん mailto:sage [2008/08/22(金) 21:51:59 ] あやしげな言葉で命令するだけで、ペッティングを全自動で行うオナホールを開発中なんだけど 需要ありますか?
838 名前: mailto:sage [2008/08/23(土) 11:27:03 ] org.eclipse.jdt.coreのIMethodからそのメソッドがスーパークラスのをオーバーライドしたのかインターフェイスのをインプリメントしたのか、簡単に調べる方法はないでしょうか?
839 名前:デフォルトの名無しさん mailto:sage [2008/08/24(日) 04:16:06 ] ファイルシステムのパスからIFileリソースを取得する際には, IWorkspaceRoot#findFilesForLocationURI(URI location) が使えますが, ファイルシステムのパスからIWorkspaceRootリソースを取得する方法はないのでしょうか? 例えば,ワークスペースフォルダーのファイルシステムパス("C:\eclipse\workspace" など)から, IWorkspaceRootリソースを取得したいのですが,このようなことをする方法はないでしょうか?
840 名前:デフォルトの名無しさん mailto:sage [2008/08/24(日) 11:08:47 ] ひとつのランタイムが保持できるワークスペースはひとつしかないから、 単純にResoucePlugin.getWorkspace().getRoot()でも同じことだとおもう。
841 名前:838 mailto:sage [2008/08/24(日) 19:03:10 ] 838だけど簡単に調べるメソッドはないみたいですね。 自分で型階層たどったりして調べていくしかないみたいですね。 アウトラインページのラベルデコレーターの実装見たらASTをつかって調べてた。
842 名前:839 mailto:sage [2008/08/25(月) 20:58:57 ] >>840 そうなんですか.回答ありがとうございます.
843 名前:デフォルトの名無しさん [2008/08/28(木) 17:41:05 ] R3.3でRCPを作っているのですが eclipseからデバックモードで起動/アプリケーションモードで起動すると正常に起動するのですが エクスポートして.exeを起動しようとすると、パースペクティブにパーツ足りない状態で起動してしまいます。 原因の調べかたってありますでしょうか?
844 名前:デフォルトの名無しさん [2008/08/31(日) 23:42:50 ] eclipse 4.0 の全貌 ttp://wiki.eclipse.org/E4
845 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 23:34:26 ] Ganymedeでプラグイン開発しています。 SourceViewerで行ハイライト、もしくは全文検索かけた際の該当箇所ハイライティング(ForeGround?)がしたいんだけど、分かる人いるかな? CursorLinePainterを使ってハイライトするのはすぐ出来たんだけど、Listnerに食わせる形じゃなくて、指定した行固定で表示したいんだよね・・・
846 名前:845 [2008/09/02(火) 20:34:03 ] こんな感じで出来た。 TextPresentationとは・・・考えてみればそりゃそうだって感じでしょんぼり。 TextPresentation presentation = new TextPresentation(); StyleRange range = new StyleRange(start, length, new Color(null, 0, 0, 0), new Color(null, 206, 204, 207)); presentation.addStyleRange(range); viewer.changeTextPresentation(presentation, false);
847 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 00:18:36 ] 「呼び出し階層」っていう機能がありますよね? あれと同じような奴の発展版で、もっと呼び出し先をじっくり解析して 実行されうるソースコード全ての背景色を変えるようなのを作りたいんですが、 どこかに似たようなサンプルはありませんか?
848 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 01:04:52 ] >>847 カバレッジツールでぐぐれ。
849 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 10:35:30 ] >>848 それは「実行された」コードであって、 「実行されうる」コードではないだろ。静的解析と動的解析の違い。 で、静的解析だけど、メソッドのオーバライドやインタフェースを考え出すと 厳密にやるのは無理じゃないかな。 似たような話だと、Implementorsプラグインが参考になるかもしれない。 これは、インタフェースで定義しているメソッドの実装を見つけるプラグイン。 もう大分更新が止まってるけど。
850 名前:デフォルトの名無しさん [2008/09/07(日) 22:58:06 ] プラグインをR33向けに移行しているのですが、どなたか知っていたら教えてください。 AbstractUIPluginを継承したくラスのstartメソッドの中で PlatformUI.getWorkbench()を呼んでいるのですが 初回起動時(cleanオプションで起動)はワークベンチが出来てからstartメソッドが呼ばれるので いいのですが、2回目以降はワークベンチが出来る前にstartメソッドが呼ばれてしまい、 getWorkbenchメソッドからIllegalStateExceptionが発生してしまいます。 AbstractUIPlugin.startの実行がワークベンチの作成後に出来ればいいのですが、 そもそもプラグインがアクティブになるタイミングはeclipse任せなので AbstractUIPlugin.startの中でPlatformUI.getWorkbenchを呼ぶこと自体アウトなのでしょうか?
851 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 23:30:23 ] リスナ登録して呼んでもらうほうが確実。
852 名前:デフォルトの名無しさん [2008/09/10(水) 20:46:32 ] 850>> AbstractUIPluginのJavaDocで以下の記述がある。 * WARNING: Plug-ins may not be started in the UI thread. * The <code>startup()</code> method should not assume that its code runs in * the UI thread, otherwise SWT thread exceptions may occur on startup.' 『getWorkbenchメソッドからIllegalStateExceptionが発生してしまいます』 とうことは、startメソッドはユーザインターフェイススレッドから 呼ばれていない。 EclipseはSWTを使用していて、ユーザインターフェイススレッド以外の Javaスレッドからオペレーティングシステムのネイティブなリソース にアクセスするには以下メソッドで同期する必要がある。 PlatformUI.getWorkbench().getDisplay.syncExec(runnable)
853 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 22:21:11 ] 現在、学校の方でJavaエクリプス3.2を使用しています。 真剣に悩んでいることがあるのでご教授よろしくおねがいします。 エクリプスで新規にプロジェクトを立ち上げるとルートディレクトリの中に 「bin」や「src」といったフォルダが作成されてしまい開発ができない状況です。 学校ではbinやsrcというフォルダはないのですが、家で新期にプロジェクトを 作成するとbinなどのフォルダが自動的に作成されてしまいます。 家でもプログラムの勉強をしたいのですが、これのせいで手がつけられない状態です。 本当に困っているのですが、どなたか詳しい方お力かしてください><
854 名前:デフォルトの名無しさん mailto:sage [2008/09/13(土) 12:09:25 ] Javaエクリプス?
855 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 01:15:30 ] Eclipse3.3でCDT使ってますが Ctrl+Jでインクリメンタルサーチできるのは良いが、ヒットした後次のヒットへ飛ぶには どうすれば良いのだろう。
856 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 14:36:22 ] ALT← ?
857 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 17:22:46 ] >>853 srcやbinが無い状態で開発とか信じられない。 その学校では何を教えているのか? まさかjavaファイルの隣にclassファイルができるような設定でやっているのか?
858 名前:デフォルトの名無しさん [2008/10/04(土) 22:54:29 ] >>853 新規プロジェクトウィザードのプロジェクトレイアウト指定で ルートに配置するかsrc、binにするか選べる。 勉強とか動作確認なら分ける必要はない。
859 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 00:52:00 ] ナビゲータービューを拡張するようなプラグインは作成できますか? また、できるとしたら、ナビゲータビューにはファイルのアイコンが表示されていますが、 このアイコンを、ファイルの4byte目が1の時は赤色のアイコン、2の時は 青色のアイコンというようにファイルの内容に応じて変えることはできますか? よろしくお願いします。
860 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 20:59:51 ] でこれた
861 名前:859 mailto:sage [2008/11/03(月) 00:22:06 ] >>860 レスが遅くなりました。すいません・・・ デコレータを調べました。できました。ドンピシャでした。 ありがとうございました。