Eclipse

起動しなくなった

なぜか、いきなりEclipseが起動しなくなった。jvm terminatedになるので、それでWeb検索してみたら、eclise.iniの-Xmxを256m以下にすれば良いらしい。「-Xmx512m」を「-Xmx256m」に書き換えたら、起動しました。なぜ? 昨日までは512mで起動していたのに。別…

Eclipse Plugin 開発勉強会

http://groups.google.com/group/eclipse-plugin-dev/web/200711 11/3(土)なら100%行けなかったけど、11/24(土)なら何とかなるかも。

言語パック

3.2用の言語パックは、ヘルプは英語のままなのか。3.1の日本語ヘルプも併用するかな。

JBuilder

JBuilderもEclipseベースになるのかー。 http://www.atmarkit.co.jp/news/200605/26/borland.html http://release.japan.zdnet.com/release/abstract.html?release_id=9294

Cray データーベース・モデリング・プラグイン

ちょっと使ってみようと思ったのですが、サイトに繋がらないですね。引っ越したのかなー?

DOM/ASTからJavaElementへの変換

そうか、これで良かったのか、ユリイカ!! MethodDeclaration methodDeclaration = (MethodDeclaration) node; int startPoint = method.getBody().getStartPosition(); IJavaElement element = compilationUnit.getElementAt(startPoint); IMethod method …

JavaElement、DOM/AST

「アスペクト指向を利用してデバッグコードを挿入できるソフトウェア開発環境」という論文を見つけました。 http://csg.is.titech.ac.jp/publications.html http://csg.is.titech.ac.jp/paper/usui-bachelor2004.pdf P.43からの、EclipseプラグインのJDTの解…

完全クラス名の取得

IType#getSuperInterfaceNames()で型が実装しているインタフェース名が取得できます。しかし、パッケージが付く場合と付かない場合があります。 パッケージが付かないと、JavaProject#findType(String)でITypeを取得できません。しかも、findType()に存在し…

言語パックのバグ?

言語パックの新しいリリースが出ていました。 Subclipseを入れると英語に戻されてしまう問題が解決していました。

JavaProject.findType(String)

デバッグを行うランタイムワークベンチだと、JavaProject.findType(String)に存在しないクラス名を指定すると、とっても遅いですね。1秒とか、そのくらい掛かりました。 作ったプラグインをインストールすると、ぜんぜん遅くないのですが。 単に指定のクラス…

言語パックのバグ?

Eclipse3.1.1に言語パックを入れた環境に、Subclipseを入れて再起動すると英語に戻ってしまいます。その後、「eclipse -clean」による起動や、言語パックの入れ直しをしても英語のままです。 Subclipseだけじゃなくて、Kijimunaも同様です。先にプラグインを…

言語パック

3.1.1用の言語パックがリリースされていたので、さっそく入れました。 行き詰まり感があるので、オンラインマニュアルのプラグイン開発の部分を読み直してみます。

Java5対応、悩み中

org.seasar.kijimuna.core.internal.rtti.AbstractRttiInvokableDescriptor(107行目)で、java.util.HashMap#put()のRTTIを作るときに、 JDK org.eclipse.jdt.core.IMethod IMethod.getParameterType() 1.4 java.lang.Object put(java.lang.Object, java.lang…

ハイパーリンク

S2JSFプラグインのソースを見ながら、Diconファイルのclass属性のハイパーリンクを作りかけていたのですが、Eclipse3.1でorg.eclipse.jface.text.hyperlinkパッケージを発見。こっちも見てみよう。Eclipse3.0で動かなくなるけど。

普通のプラグインって?

そういえば、普通のプラグインを作ったことが無いような。JDTゴリゴリなのばっかりだな。JDTは難しいというか、どこを見たら良いのかが分からないので、調べるのが面倒くさいです。普通のプラグインは、もう少し楽なんだろうか?

implementsしているInterfaceによるフィルタリング

ゴチャゴチャ書いていたら、問題なく動くようになりました。あとは、 ソースを綺麗にする カテゴリビューにボタンを追加する 設定画面をてきとうに作る というのができたらリリースします。

シグネチャー

あー、難しい。ちょっと気合い入れて調べる必要があるかなー。KijimunaのJava5対応でも必要そうだし。とりあえず、 IMethodとか(org.eclipse.jdt.coreパッケージ) Javaソースをコンパイルした結果のJavaモデル要素。IMethod.getSignature()は、完全クラス…

implementsしているInterfaceによるフィルタリング

とりあえず動作しました。 メソッド名のフィルタリング判定として、メソッドのシグネチャーで比較しています。@categoryなど、一つのファイル内だけで判定するのなら問題ありません。 しかし、別のファイル(implementsしているInterface)のメソッドのシグ…

プロジェクトごとの設定

backport175のソースを見たら、簡単だった。 // 保存 IScopeContext projectScope = new ProjectScope(project); IEclipsePreferences node = projectScope.getNode(PLUGIN_ID); node.put("isEnable", Boolean.toString(isEnable)); node.flush(); // 取得 I…

既存パースペクティブのビューの強制更新

StCategoryで、カテゴリを選ぶとMembersまたはOutline(次バージョンでサポート)を再表示する必要があります。表示時の絞り込みは、Filterをplugin.xmlで設定しているので問題ないのですが、任意に再表示させる方法が見つかりません。 とりあえず現状では、…

保存イベント

natureとbuilderを使ったら、JavaCore.addElementChangedListener()していても、保存時のイベントを取得できました。これで、StCategoryでカテゴリ名の自動学習が作れます。

保存イベント

Javaエディタでセーブしたときは、次のように登録しておけば呼んでくれました。 ResourcesPlugin.getWorkspace().addResourceChangeListener(this, IResourceChangeEvent.PRE_POST_BUILD); しかし、Javaエディタの編集を知るために次のように登録すると、上…

@IT:作って覚えるEclipseプラグイン

http://www.atmarkit.co.jp/fjava/rensai3/eclipsepde01/eclipsepde01_1.html おー、分かりやすくてイイ。特に2ページ目。基本をおさえずに見よう見まねで作っているので、参考になります。

プラグインからプラットホームのバージョンを取得したい 2

分からなかったので、別の方法にしました。 contentassist175プラグインを、backport175プラグインへ組み込むときに使うつもりでした。id:r-matuda:20050810:p1で書いたけど、Eclipse3.0と3.1でバイナリ非互換になるが嫌だったので、リフレクションを使って…

プラグインからプラットホームのバージョンを取得したい

Eclipseプラグインから、Eclipseプラットホームのバージョンを取得したいのですが、どこを見れば良いのだろうか。「3.0」とか「3.1」とかが分かれば良いのだけど。 誰かたのむ。

NameLookup

ContentAssist175のいきなり補完をKijimunaに移していて気が付いたのだけど、NameLookupを使うにはJavaProjectじゃなくてCompilationUnitが必要なんだね。 CompilationUnitからJavaProjectは取得できるけど、逆は出来ませんでした。JavaProjectから新規にCom…

インタフェースの検索

ContentAssist175のために、インタフェースを検索する方法を調べてみました。 全ての型を辿る 型が多いと、とても時間がかかります。ソースとバイナリ(Jarの中の型)で処理を分けるのが面倒くさいです。 IPackageFragmentRoot roots = javaProject.getAllPack…

3.1 ダウンロード

今朝は軽かったので、サクッとダウンロードできた。ボチボチと見ていくかな。

3.1

ちゃんとスケジュール通りにリリースするって、すばらしい。いまは重いけど、来週くらいになればダウンロードできるかな。 Kijimunaは動いてくれるのかな? そろそろテコ入れしたいのですが、なかなか時間が取れない。趣味でも仕事でも何でも良いからプログ…

Eclipse UML

Kijimunaのソースコードをリバースして、クラス図から全体を見ている。たまに、Eclipseごとハングしてしまうことがある。一度でもハングすると、Eclipse本体は起動するのだが、EclipseUMLを使おうとした途端にハングしてしまう。2度と、EclipseUMLを使うこ…