we are three eclipse operators |
Eclipseの設定・操作メモです。日本語版とオリジナル版が混ざっているので、
メニュー名が日本語だったり、英語だったりします。これはいずれ統一しようと思います。
●プロジェクトの下にソースディレクトリ、出力ディレクトリを別々に作る
「Java-New Project」の「Souce and output folder」枠の中の
「Folders」を選び、Source folder name:に「src」、
Output folder name:に「classes」を入力。
●外部ライブラリ(.jar)のビルド・パスへの追加
パッケージエクスプローラのプロジェクトを右クリック、「プロパティ」
でプロパティダイアログを出し、「Javaのビルド・パス」を選び、
「ライブラリ」タブをクリック。「外部JARの追加」
●Antを使う
「ナビゲート」→「ナビゲータ・ビューで表示」を選び、ナビゲータ・ビューを表示する。
build.xmlを右クリック→「Antの実行...」
●行番号の表示
「Workbench-Editors-Text Editor」-「Appearance」タブの「Show line number」にチェック。
★3.1では「General-Editors-Text Editors」の「Show line numbers」にチェック。
●ソースコード・フォーマッターでifブロックとelse ifを別の行にする
「Java-Code Formatter」-「New Lines」タブ
「Insert new lines in control statements」にチェック。
★昔はこのよーにelse節を別の行にするのが好きでしたが、今はEclipse標準を使っています。
●インデントにタブ文字を使わず、半角空白を使用
「Java」-「Code Formatter」-「Style」タブの
「Insert tabs for indentation, not spaces」のチェックを外す。
★3.1では「Java」-「Code Style」-「Formatter」タブの「Select a profile:」で、
"Eclipse"から"Java Conventions [built-in]"に変更するか、
それを元に「Editで」新しいプロファイルを作り、
詳細設定の「General settings」の「Tab policy」を"Spaces only"にします。
またそうすると、「Java」-「Editor」-「Typing」の、
「Tab key indents the current line」のチェックも外れると思いますが、
外れてなかったらここも外します。
●ソースディレクトリ以下の特定のディレクトリをビルド対象外にする
「Project」メニュー-「Properties」-「Java Build Path」-「Source」タブの
「Exclusion filter」を編集する。
●ワークスペースを切り替える
これはEclipseの起動時のコマンドライン・オプション-dataで変更できます。
C:\Wintools2\eclipse\eclipse.exe -data c:\usr\java\eclipse-projects
|
●Javaプログラムの日本語をシフトJISとUTF-8で切り替える
Windows上のEclipseでは、デフォルトでシフトJIS(正確にはMS932)になっていますが、
これをUTF-8に切り替えたいという場合の操作です。
プロジェクトを右クリック⇒「Properties」画面の一番上「Resource」の設定の中に、
「Text file encoding」という部分があり、
「Inherited from container(MS932)」が選択状態になっていると思います。
ここを「Other」に変え、プルダウンから希望のエンコーディング(ここではUTF-8)を選べばOKです。
●エディタの日本語が文字化けする!
これは「Edit」→「Encoding」の設定があっていない場合のほかに、
フォントが「Courier New」だと日本語が出ない環境があるようです。
(出る環境もある)化ける場合は、
「Window」→「Preferences」→「Workbench」→「Fonts」
の「Text Font」をMSゴシックなどに変えると直ります。
●ワークスペースに別のそれからプロジェクトのディレクトリをインポートする
- ディレクトリをワークスペースの下にコピーしてきます。
- メニュー File-Import-Existing Project into Workspaceを選びます。
- 新しいディレクトリを選択してFinish
.projectや.classpathを事前に編集する必要はありません。
●import文が畳まれて表示されてしまうのをやめさせたい!
「Window」→「Preferences」→「Java」→「Editor」→「Folding」のチェックを外します。
●不要なelse節に警告が出るのをやめさせたい!
例えば次のようなコードを書くと、
private int aaa(int n){
if(n > 0){
return 1;
} else {
return 2;
}
}
|
return 2をelse節で囲む必要はない、という警告が出ます。
確かにその通りなのですが、可読性や保守性の観点から、
else節を残すのがよい場合の方が多いと思います。
「Window」→「Preferences」→「Java」→「Compiler」→「Unused Code」
で、「Unnecessary else statement」の値を「Warning」から「Ignore」に変えます。
●Organize Importsで、import文に*を使わせるには?
Eclipseの初期設定では、
同じパッケージに属する様々なクラス
(例えばjava.util.List、java.util.Vector、java.util.Iterator、java.util.StringTokenizer...)
を使っているとき、
「Organize Imports」(CTRL+SHIFT+O)すると、全てのクラスのimport文が個別に挿入され、
「import java.util.*;」のようにはしてくれません。
そのようにするには、
メニュー「Window」→「Preferences」→「Java」→「Code Style」→「Organize Imports」を開き、
「Number of imports needed for .*」
に、その数より多くの数のクラスがインポートされると*を使うようにしたいところの整数を書きます。
初期設定では99ですが、3程度にするのがよいと思います。
●Eclipse 3.1〜で、Serializableを実装すると警告が出る
こんなメッセージが出ます。
The serializable class *** does not declare a static final serialVersionUID field of type long
これは「Window」→「Preferences」→「Java」→「Compiler」の「Errors/Warnings」で
「Potential programming problems」の▼を押し、
「Serializable class without serialVersionUID」を
Warning から Ignore に変えれば警告が出なくなります。
●external JARsの複数ファイルのパスを一括で置き換えることが多いので簡略化したい
よくある例が、Webシステムの開発で、servlet-api.jar、jsp-api.jarなどのJARファイルを
Apache Tomcatのcommon/libの下に置いていて、これをEclipseプロジェクトで参照している場合です。
Tomcatのインストールディレクトリが開発者やPCによってまちまちだったりすると、
そのたびにexternal JARsのこれらのパスを一々書き換えないといけません。
これを簡略化するのがClassPath Variableとゆーもので、
パスの一部を変数として定義しておけば、それを変更するだけで外部JARのパスを切り替えることができます。
「Window」→「Preferences」→「Java」→「Build Path」→「Classpath Variable」
に名前を「TOMCAT_HOME」、値を「C:\Program Files\Tomcat5」と設定し、
external JARsのパスを例えば「TOMCAT_HOME/common/lib/servlet-api.jar」
のようにしておけば、TOMCAT_HOMEが異なる複数のPC間でプロジェクトのフォルダをコピーしても、
プロジェクトのリビルドだけですぐに動かすことができます。
●.javaファイルの新規作成時に、先頭に決まった形のコメントを入れたい
「コード・テンプレート」の機能で可能です。
メニューから
Window⇒Preferences⇒Java⇒Code Style⇒Code Templatesを選び、
Codeの+を展開してNew Java Filesを開き、Editでテンプレートを編集します。
ここには${変数名}の形で別の文字列に置き換わる変数を使うことが出来ます。
例えば、
/*
* ${file_name}
* ${date} ${user} 作成
*/
${filecomment}
${package_declaration}
${typecomment}
${type_declaration}
|
こんな感じにコメントを入れることができます。
なお、「Source」⇒「Generate Getter/Setter Method」
で自動生成するメソッドにもこのコメントを入れる場合は、その次に出てくるダイアログで、
「Generate Method Comments」にチェックを入れる必要があります。
(自動生成するGetter/Setterにコメントなんか要らんだろう、
という方はこのチェックを外せばよいです)
●TortoiseSVNで履歴管理をしていたら、bin(classes)フォルダにも.svnができてしまった
SubversionのWindowsクライアント、TortoiseSVNを使ってソースフォルダを履歴管理しているとき、
Eclipseでビルドすると、ソースフォルダ内部の.svnフォルダも一緒に出力フォルダ
(binやclasses等という名前のフォルダ)
にコピーされてしまいます。
これをやめさせるには、
メニューの「Window」⇒「Preferences」⇒「Java」⇒「Compiler」⇒「Building」を開き、
「Output Folder」の▼を開いて、「Filtered Resources:」
が初期値は「*.launch」となっているので、カンマで区切って
「*.launch, .svn/」と書き足します。末尾のスラッシュはフォルダであることを指定します。
間に空白を入れてもOKです。
ApplyまたはOKを押すと「フルリビルドするか?」というダイアログが現れるので、
ここでYesを選べば、もし出力フォルダに.svnが作られていたとしても、
リビルドが終わったら削除されています。
●Eclipseを実行しているJava VM(JRE)のパスとバージョンを確認する
Help ⇒ About Eclipse Platform ⇒ Configuration Details
を押して出てくるウィンドウの「eclipse.vm=」の行などを見ればほんのり分かると思います。
●JDK6上で動かしているEclipseで、J2SE 1.4 VM用の.classファイルを作る
一般にJavaでは、.classファイルを生成したコンパイラより古いバージョンのJava VMでは、
java.lang.UnsupportedClassVersionErrorとなり、動かすことができません。
しかしEclipseでは、Eclipse自身を動かしているJavaのバージョンより低いバージョンの
Java VMで動く.classファイルを作ることが可能です。
方法はプロジェクトを右クリック⇒「Properties」⇒「Java Compiler」を選び、
「Use Compliance from execution environment」
のチェックをはずし、
「Compiler Compliance Level」を1.6から1.4に変えればOK。
Eclipse 3.5(Galileo)なら、1.3〜1.6の範囲で選べます。
このときに、例えばJDKやJREのバージョン1.3や1.5をインストールしていなくても、
1.3や1.5の互換レベルでコンパイルすることも可能です。
なお、この設定を変えるとプロジェクト単位で総リビルドするか確認されます。
(first uploaded 2003/09/07 last updated 2010/09/15, MISUMI URANO - YUKO AMEMIYA)
|