毎年 6 月恒例の https://eclipse.org/ の統合開発環境 Eclipse の最新版 4.7 Oxygen リリースに合わせて、Pleiades All in One (AiO) をリリースしました。Pleiades AiO は Windows および Mac 向けに、Eclipse 本体と Pleiades プラグインおよび各言語向けの便利なプラグインのセットです。Pleiades プラグインは Eclipse や Android Studio のような Java アプリケーションを AOP で動的に日本語化するための Java エージェントです。
Pleiades AiO ダウンロード
http://mergedoc.osdn.jp/pleiades_distros4.7.html
Pleiades AiO 対象環境
- Windows
- macOS (参考:Mac 版 Eclipse Pleiades All in One リリース)
Linux 版はありません。Linux で Eclipse を日本語化したい場合は AiO ではなく、Pleiades プラグインを単体でダウンロードし、あらかじめインストールしておいた素の Eclipse に適用してください。
Eclipse リリーストレイン
Eclipse のコードネームは頭文字をアルファベット順として、天体・神・科学をテーマとして毎年多くの案が出され投票によって決定されています。今回の頭文字は O で Odyssey、Osiris など多くの候補の中から、投票の結果 Oxygen になりました。Pleiades AiO は以下の Eclipse リリースに連動してリリースします。
メジャーリリース
バージョン | 本家リリース日 | 備考 |
---|---|---|
4.5 Mars | 2015/06/24 | |
4.6 Neon | 2016/06/22 | |
4.7 Oxygen | 2017/06/28 | 今回リリース |
4.8 Photon | 2018/06/27 | |
4.9 Q***** | 2019/06/26 | コードネーム廃止? |
メンテナンスリリース
2017/09/27 Oxygen 1a 追記、Oxygen 1 は Pleiades AIO ではリリースしない
バージョン | 本家リリース日 | 備考 |
---|---|---|
4.7 Oxygen 1 | 2017/09/27 | |
4.7 Oxygen 1a | 2017/10/11 | Java 9、JUnit 5 フルサポート |
4.7 Oxygen 2 | 2017/12/20 | 定例バグフィックス |
4.7 Oxygen 3a | 2018/04/11 | Java 10、var 変数型推論対応他 |
メンテナンスリリース変更点
####Oxygen 3a (4.7.3a.v20180411)
本家 eclipse.org からダウンロードした Oxygen 3a は Java10 で Tomcat を使用すると "endorsed is not supported." エラーが発生します。eclipse.org リポジトリ上では修正されていますが、3a リリースに間に合わなかったようです。Pleiades All in One では eclipse.org の CI サーバから取得したバグ修正版を組み込み済みのため、このエラーは発生しません。
Java 10 (JEP 286) var ローカル変数型推論
Pleiades All in One の変更点
・各プラグイン、処理系バージョンアップ
・Java 9 を Java 10 に入れ替え
・gradle 編集時のプロジェクト自動反映が可能になったためデフォルト ON (地味に便利)
Pleiades の変更点
2018.04.11
・Eclipse Oxygen 3a 対応
・Veracode のプラグインで IOException: HTTP/1.1 401 Unauthorized が発生するためパッケージをすべて除外
・[Eclipse] 訳追加修正: Buildship
・[IDEA] 訳追加修正: Android Studio
2018.03.31
・Pleiades インストーラー修正: Android Studio 3.1 以降は config ディレクトリに vmoptions ファイルを配置するように修正
・[Eclipse] 訳追加修正: Azure Toolkit, Flex Builder, jsLex, Logfile View, PyDev
・[IDEA] 訳追加修正: Android Studio, AppCode, CLion, DataGrip, Goland, IntelliJ, MPS, Node, PhpStorm, PyCharm,
ReSharper, RubyMine, Smarter Editor, String Manipulation, WebStorm
####Oxygen 2 (4.7.2.v20171225)
・Windows 版 Full Edition 付属の JRE が破損していたため修正 (ビルド時の Mac Parallels から Windows 共有参照不具合)
####Oxygen 2 (4.7.2.v20171220)
Pleiades All in One の変更点
・各プラグイン、処理系バージョンアップ
Pleiades の変更点
・依存ライブラリのパッケージ衝突回避ため、Gradle shadow プラグインで Javassist などをリロケートし、fat jar 化
・[Eclipse] FORUM#38964: ソースディレクトリ右クリックの "Attach Library Source" が ????????????? になる問題を修正
・[Eclipse] Java 9 API 日本語ドキュメントのホバー表示自動設定対応
・[Eclipse] 訳追加修正: Buildship, Eclipse, Gradle IDE, JBoss Tools
・[IDEA] 訳追加修正: Android Drawer Impoter, Android Studio, GoLand, IntelliJ, PyCharm, Live Edit, PhpStorm
・以下の Eclipse 表現 (IBM ルール) を一般的な表現に変更
restart: 再始動 -> 再起動
startup: 始動 -> 起動
・[FORUM#39026] 誤訳:「Interpreter」が「インターセプター」
####Oxygen 1a (4.7.1a.v20171019)
Pleiades All in One の変更点
・ PHP パッケージの PHP プラグインが機能していていなかったため修正
Pleiades の変更点
・ Java 9 環境で起動すると日本語化できない問題を修正 (Javassist バージョンアップ)
・ macOS・IDEA 系で Info.plist の English から Japanese への書き換え廃止 (High Sierra メニュー不具合回避)
・ 訳追加修正 Eclipse: AmaterasModeler, Buildship、EGradle、FreeMarker, SpotBugs
・ 訳追加修正 IDEA 系: IntelliJ、Android Studio、Gogland
####Oxygen 1a (4.7.1a.v20171012)
Pleiades All in One の変更点
➔ Eclipse Class Decompiler へのアドウェア混入について
・ Eclipse Class Decompiler プラグインを Enhanced Class Decompiler に変更
####Oxygen 1a (4.7.1a.v20171011)
Eclipse の変更点
・ Java 9、JUnit 5 フルサポート
・ macOS High Sierra メニュー不具合対応
Pleiades All in One の変更点
・ Java 9 正式版同梱 (32bit 版は廃止されたため同梱なし)
・ WTP Tomcat 9 のサーバー設定を Java 8 から Java 9 に変更
・ FindBugs プラグインを SpotBugs に変更 (プロジェクトを右クリック > SpotBugs)
・ Pleiades を含む各プラグイン、処理系バージョンアップ
Pleiades の変更点
・ 訳追加修正 Eclipse: Java 9, JUnit 5 関連、Eclipse Class Decompiler
・ 訳追加修正 IDEA 系: IntelliJ, Android Studio
・ インストーラーの設定ファイル編集ロジックの修正
Pleiades AiO 追加・変更点
設定済み Java 10 追加
80 以上の機能が追加された Java 9 が、Full Edition に含まれるようになりました。別途 JDK をダウンロード/インストール/設定することなく、プロジェクト作成時またはプロジェクトのプロパティで指定するだけで、すぐに Java 9 を利用することができます。 注意:現在の最新版は Java 8 です。Java 9 はアーリーアダプター向けの評価版です。 2017/10/11 Java 9 正式版同梱 2018/04/11 Java 9 を 10 に入れ替え
設定済み Tomcat 9 追加
HTTP/2 や Servlet 4.0 などに対応した Tomcat 9 が Full Edition に追加されました。こちらも設定済みのためサーバー・ビューからサーバー作成時に選択するだけで、すぐに利用できます。下記デフォルト設定にないバージョンの Tomcat と Java の組み合わせが必要な場合は、追加ボタンを押して、Java および Tomcat のパスを指定して作成してください。 注意: 現在、Tomcat 9 はアーリーアダプター向けの評価版です。また、現時点では WTP が Java 9 に対応していないため、Tomcat 9 には Java 8 が設定されています。 2017/10/11 WTP が Java 9 に対応しました。Tomcat は 9.0.0 アルファ版が 2 年ほど続きましたが、2017/9/30 に 9.0.1 ベータ版になりました。現在の Tomcat 安定リリースは 8 系です。
Minimalist Gradle エディターを EGradle エディターに変更
Eclipse 公式 Gradle プラグインの Buildship はエディターの機能が無いため、最低限の機能を持つ Minimalist Gradle エディターを同梱していましが、今回から EGradle エディターに変更しました。Gradle のタスク実行・管理やプロジェクト作成ウィザードは、今までどおり Buildship により提供されます。
EGradle は Buildship と同じような機能を持つプラグインでしたが、つい先日エディター部分のみが分離され、EGradle エディターとして独立して利用できるようになりました。EGradle エディターには下記のような機能があります。
- コード補完およびツールチップ
- 構文強調表示
- アウトライン・ビュー・サポート
- 解析エラー対応
- 括弧の切り替え、強調表示、自動終了
- ブロックコメントのショートカット
- 他の Gradle ファイル、URL、Java、Groovy の型へハイパーリンク
逆コンパイラー・プラグインに自動ソース添付機能が追加
クラスファイルを開くときに、Maven リポジトリやローカルに Java ソースがある場合、自動的に添付される機能が設定できるようになりました。その他、エンコーディングも指定できるようになっています。
Ultimate 版に Ruby、Perl プラグイン追加
Ultimate 版に Ruby (DLTK)、EPIC プラグイン追加しました。デフォルトで以下のようにメニューバーにパースペクティブを切り替えるためのアイコンが表示されます。ただし、Ruby や Peal のコンパイラや実行環境は付属していないため、別途自分でインストールする必要があります。
Pleiades プラグインの改善
- 高速化、メモリ使用量削減、翻訳リソース効率化
- 設定や他のプラグインの更新を検知し、次回起動時に自動的に -clean 起動
- 127 個のプラグインの翻訳追加と修正
その他
- Eclipse 4.7 Oxygen 対応、各ランタイム・プラグインのバージョンアップ。
- Window Builder で作成した SWT プロジェクトが実行できない問題を修正。(JFace の jar カスタマイズを廃止し、metadata で設定するように変更)
- JBoss Tools の LiveReload プラグインのカスタム版が含まれていると通常の JBoss プラグインがインストールできないため同梱廃止。
- 一般 > Glance 検索 > 始動時に表示 の自動デフォルト設定を OFF に変更。あらゆるビュー要素を書き換えることによる問題発生を低減。今のところ、使用するときにショートカット Ctrl + J で開き、使用しないときは Esc または ✕ で閉じておくことを推奨。
既知の不具合
AiO に含まれている、エディターの背景色やフォントの色などをテーマとして設定可能なプラグイン Eclipse Color Theme に既知の不具合があります。設定すればエディターに反映され機能しますが、設定時のプレビューができません。(設定 > 一般 > 外観 > 色テーマ) このプラグインは数年更新されておらず、今のところ修正される目処がたっていません。
今話題のプラグイン
AiO には含まれていませんが、今話題になっているプラグインをご紹介します。
Darkest Dark テーマ
Darkest Dark テーマというプラグインがマーケットプレースで大人気となっています。Eclipse 標準のダークテーマより、ダークなテーマで、アイコンは独自の置き換え機構によりフラットデザインになります。このテーマを使用するにはプラグインをインストールし、設定 > 一般 > 外観 のルック&フィールを Darkest Dark に設定します。また、合わせて 設定 > EGradle > エディター > 構文の色指定 > ダーク・テーマ向けのデフォルトに戻す も設定すると良いでしょう。
インストールするには を実行中の Eclipse にドラッグ&ドロップまたは、更新サイト http://www.genuitec.com/updates/webclipse/ci/ を使用してください。
Kotlin プラグイン
Google が Android の開発言語として正式にサポートの追加を表明したことにより、Eclipse の Kotlin プラグインのダウンロード数が急激に増えているようです。Kotlin はロシアの Jetbrains 研究所で生まれ (本社はチェコの首都プラハ)、今後は非営利の財団へ移管が予定されている Java 仮想マシン上で動く言語で、後発なだけあり、多くのモダンな特徴を持っています。Eclipse 用のプラグインも Jetbrains 製ですが、機能は最低限になっているようです。
インストールするには を実行中の Eclipse にドラッグ&ドロップまたは、更新サイト https://dl.bintray.com/jetbrains/kotlin/eclipse-plugin/last/ を使用してください。
Eclipse Oxygen 新機能・変更点
Eclipse 4.7 Oxygen では非常に多くの機能追加、バグ修正、改善が行われました。いくつかの機能は Neon にもバックポートされています。大きな変更はありませんが、知っておくと便利な機能が含まれています。その中から一部ですが、ご紹介します。
コード・カバレッジ・プラグイン EclEmma 3.0
コード・カバレッジを計測するプラグインとして定番となっていた EclEmma が eclipse.org の正式なプロジェクトとして承認され、標準になりました。実行やデバッグと同じようにカバレッジ実行できます。なお、大きな問題ではないのですが、検索プラグイン Glance を表示しているとカバレッジのグラフが表示されなくなる (数値は表示される) Glance 側の問題があるため、回避策として Glance を使用していないときは Esc や ✕ ボタンで Glance を閉じておきましょう。
Gradle プラグイン BuildShip 2.0
オフラインモードがサポートされました。有効にすると Gradle 呼び出し時の引数に --offline が追加されます。
その他、以下の機能が追加・変更されています。
- マルチプロジェクトの複合ビルドのサポート
- 高解像度、ダークテーマ対応
- インポートウィザードの簡略化
- より正確なプロジェクト同期
- Java 最小バージョンが 1.7 に
- Mars から Oxygen に移行する場合は再インポートが必要
- インポート時の JAVA_HOME 設定不可、代わりに gradle.properties を使用
- インポート時の Java 引数や Gradle プロパティ設定不可、代わりに gradle.properties を使用
Git 統合 4.8
機能の追加
- 分離された HEAD にリモートブランチ適用をサポート(Bug 485396)
- 複数の ICommitMessageProvider 実装をサポート(Oracle Bug#376388)
ユーザビリティの向上
- ボタンラベルにアクションの動詞を使用
- ハードリセットダイアログのボタンラベル
- ローカル変更の破棄を変更するダイアログボックスのボタンラベル
- PullResultDialogのボタンに動詞を使用する(Bug 514320)
- ステージングビューのコンテキストメニューが表示されたらフォーカスを設定
- git ステージングビューのボタンにニーモニックを追加
- ステージングビューのフォルダノードをダブルクリックして展開可能に
- サブモジュールの進捗報告を改善
- Eclipse 上に git URL がドロップされたときにクローン・ウィザードを開く(Oracle Bug#513247)
- FetchGerritChangePage のノンブロッキング・コンテンツ・アシスト(Bug 515733)
- FetchGerritChangePage をリファクタリングして単純化し、フォアグラウンド実行オプションを削除(Bug 496493)
- FetchGerritChangePage の Change フィールドへの貼り付けの改善
- FetchGerritChangePage のタグフィールドに BranchNameNormalizer を指定
- ダブルクリックで DiffEditorOutline のフォルダノードを展開/折りたたむ
- FetchGerritChangePage のブランチ名フィールドを改善
- PushBranchPageにBranchNameNormalizer を追加(Oracle Bug#515279)
- git ステージングビューのボタンにニーモニックを追加(Bug 515040)
- 実行中ダイアログの「続行」ボタンにニーモニックを追加(Bug 514480)
パフォーマンスの向上
- モデル対応の git 同期で複数のツリーウォークを避ける(バグ516358)
- EclipseGitProgressTransformer のスロットル更新(Bug 516276)
バグの修正
- 閉じられたプロジェクトや素のリポジトリでは自動共有しない
- GitProjectData で NoWorkTreeException を防止(Oracle Bug#517056)
- RepositorySelectionPage で NPE を修正(Bug 517044)
- 多くのデフォルト・ハンドラを削除(Oracle Bug#495064)
- CommitEditor:チェックアウトボタンの表示を修正(Bug 516679)
- 削除されたリソースとの同期を修正(Oracle Bug#516426)
- AbstractBranchSelectionDialog でノード選択を修正(Oracle Bug#516411)
- macOS 上の HiDPI 行番号ルーラーの改善(Bug 516322)
- すべての環境設定スコープで core_defaultRepositoryDir を検索(Oracle Bug#496737)
- SubmoduleUpdateCommand で NPE を修正(Oracle Bug#514936)
- スペルチェック無効時の SpellCheckingMessageArea クリーンナップと NPE の防止(Bug 515999)
- 複数のリソースを HistoryView にリンクするための回避策(Oracle Bug#392948)
- HyperlinkTokenScanner をより堅牢に(Oracle Bug#515730)
- reflog ビューを非同期にロード(Oracle Bug#515606)
- リポジトリ・ビュー内の表現トグル・コマンドを修正(Oracle Bug#495064)
- FETCH_HEAD のみが変更されたときに EGit 状態を更新(Oracle Bug#437362)
- 作業領域がまだ準備されていないときは、装飾しない(Bug 515994)
- 不正な IAdaptables に対する健全性チェックを追加(Bug 515993)
- チェックアウト文言修正
ビルドとリリースエンジニアリング
- ブリッジを 9.4.5 に更新
- Maven プラグインを更新
- Oomph 設定を更新
Java プラグイン JDT 3.13
クリックした行まで実行
ブレークポイントで停止した行からキャレットがある行まで Ctrl+R (Cmd+R) で実行できる機能が以前からありましたが、今回、垂直方向ルーラーを Ctrl+Alt+左クリック (Cmd+Opt+左クリック) した行まで実行できるようになりました。
概説ルーラーのブレークポイント表示
右側の概説ルーラーにもブレークポイントが表示されるようになりました。注釈設定から OFF にすることもできます。
トリガーポイント
今回追加されたトリガーポイントは、特定のブレークポイントに設定することで、そのブレークポイントを通過するまで、その他のすべてのブレークポイントで停止しなくなります。これはヒット・カウントや条件付きブレークポイントで設定が難しい場合に便利です。例えば、下記の場合は、1 回目の x() 呼び出しでは 15 行目で停止せず、トリガーポイントとして設定された 2 回目の x() 呼び出し通過後は 15 行目で停止するようになります。トリガーポイントとなるブレークポイントにはアイコンの右下に T が表示され、それ以外のブレークポイントは T に斜線が入ったアイコンとして表示されます。
条件付き監視ポイント
監視ポイントはフィールドに設定可能な特殊なブレークポイントで、アクセスや変更があった場合に停止します。今回、条件付きブレークポイントと同じように監視ポイントにも条件を設定できるようになりました。
トレースポイントの切り替え
トレースポイントを使用すると、ソースを修正せずに簡単にメソッド名付きのデバッグログを挿入できます。このアクションは、クラスとメソッド名を出力する "systrace" テンプレートを使用して条件付きブレークポイントとして作成され、中断しません。通常のブレークポイントとして中断したい場合は、条件部で明示的に true を返してください。
デバッグ実行時の変数に格納されないメソッド戻り値の表示
メソッドの結果が変数に格納されていなくても、デフォルトで直前のメソッドの結果が変数ビューに表示されるようになりました。これは、設定 > Java > デバッグ > ステップ操作後のメソッド結果を表示する を OFF にすることで無効にできます。(ON だと VM により遅くなる可能性あり)
コンソールに JUnit スタックトレースを表示
JUnit ビューに追加されたボタンからコンソールにスタックトレースを表示できるようになりました。コンソールでは、スタックトレースの一部をコピーしたり、ハイパーリンクでクラスにジャンプしたりできます。
インポートの再編成ダイアログでスキップ
今まで複数の未解決のインポートがある場合、すべて確定する必要がありましたが、スキップできるようになりました。スキップされた型は import に追加されません。
クイック・アウトラインでの継承されたメンバー表示切替
エディター上で Ctrl+O (Cmd+O) でクイック・アウトラインを表示できますが、さらに続けて同じショートカットを押すことで、継承されたメンバーの表示/非表示が切り替えれるようになりました。右上の ▼ > フィルターからダイアログを開くと、さらに多くの表示オプションを設定することができます。
推奨されないフィールドやメソッドを非表示にする
各ビューの ▽ メニューから推奨されないメンバーを非表示にできるようになりました。対象ビュー:アウトライン、クイック・アウトライン、メンバー、パッケージ・エクスプローラー、プロジェクト・エクスプローラー
PHP プラグイン PDT 5.0
ビルトイン PHP HTTP サーバのサポート
PHP ビルトインの Web サーバーがサーバー・ビューから起動・停止できるようになりました。テストやちょっとしたデモ用途などで Apache などを起動しなくても利用でき、XDebug がインストールされていればデバッガーも使用可能です。
全般
- PHPUnit のサポート
- 設定の構造の再編成
- 新しいクラス/インターフェースの作成ウィザード
- getter/setter 生成ウィザード
エディター
- PSR-2 フォーマッタがデフォルトに
- use を編成するための新しい仕組み
- コード補完ダイアログのテーマ対応
- PHP 7 キーワード対応
デバッガ
- Zend デバッガのプロファイリング・サポート
C/C++ プラグイン CDT 9.3
エディター
- C++ 11 の auto 変数対応
- クラステンプレートの定義から前方宣言へのナビゲーションをサポート
- アセンブリファイルの宣言のオープンをサポート
コンテンツアシスト
- アドレス補完のサポート
- 非アクティブなコードのコンテンツアシスト改善
- 拡張子のないファイルのインクルード
- 強化されたパラメータヒント
- 初期化構文によるコンストラクタ補完
定数
- const キーワードの配置スタイル設定
- コード生成時の const サポート
- ファイル内の const をそろえる
コード解析・GCC クイックフィックス
- セミコロンなし
- 誤ったメンバー指定 (gcc 6 以上)
- . を -> に置換
- -> を . に置換
- -fdiagnostics-parseable-fixits のサポート
パーサー
- 正確な結合分解能
- 機能テスト用の CDT バージョン番号の公開
- C++ 14 言語サポート
ビルド
- 事前ビルドタスクとパラレル make
- ビルドコンソールの高速化
- .SECONDARY を生成された Makefile から削除
デバッグ
- デバッガコンソールページのツールバー拡張
- ソースが見つからない場合の動作設定
その他
- 起動グループ機能をプラットフォームに移動
- Arduino サポート
- マクロ参照周囲の定義を検索結果に表示
- コメントの折りたたみ設定の改善
プラットフォーム 4.7
アプリケーションの二重起動抑止
二重起動防止のために、起動中の場合は終了して再起動します。この設定が OFF でも Shift を押しながら起動することで、有効にすることができます。
複数のアプリケーションの起動を制御する起動グループ
CDT にあった機能がプラットフォームに移動され、直感的で使いやすいように修正されました。継続条件としてコンソール出力を正規表現で指定したり、すでに起動している場合は流用するなどのオプションが追加されています。
文字列貼り付け時のエスケープがデフォルトで ON に
文字列リテラルへテキストを貼り付けるときのエスケープがデフォルトで ON になりました。貼り付ける文字列にダブルクォートが含まれている場合は \ でエスケープされます。
設定および比較エディターで左右の入れ替え
注意: 入れ替えると同期化ビューの表示がちょっと変 (2017.07.29 追記)
設定
エディターの選択ダイアログで同じ拡張子のファイルすべてに適用
ファイル右クリック > 次で開く > その他 で開くエディターの選択ダイアログに「すべての '*.xxx' ファイルで使用する」チェックボックスが追加され、簡単に拡張子単位でエディターを設定できるようになりました。設定は既存からある「一般 > エディター > ファイルの関連付け」、「一般 > コンテンツ・タイプ」に保存されます。
'その他のプロジェクト' ワーキングセットの非表示
複数のプロジェクトをワーキングセットに分けて、「ワーキング・セットの選択...」から表示/非表示を選択できますが、ワーキングセットに格納していないプロジェクトが表示される "その他のプロジェクト" は非表示にできませんでした。今回からは、その他の表示/非表示を切り替えるメニューが追加されました。
フォームベースの UI がフラットに
フォームベースの UI がフラットになりました。これは Clean Sheet というプラグインの影響を受けています。
エディター切り替えの改善
Ctrl+E (Cmd+E) で開いているエディターをワイルドカードでフィルタリングして選択できます。リストでは、さらに Ctrl+E (Cmd+E) または上下キーを押すことで移動できます。
ステータスバーの表示/非表示
下部ステータスバーの表示/非表示を切り替えれるようになりました。クイック・アクセスからは「ステータスバーの切り替え」で検索できます。
その他
- ダイアログの OK ラベルなどが、アクションを明確に示すラベルに変更
- 画像が直接、内部 Web ブラウザーで開かれるように
- ブレークポイントビューが名前、作成時刻でソート可能に
- クイックアクセスが空白区切りの複数文字列で検索可能に
- クイックアクセスでワイルドカード * と ? が使用できるように
- 問題、ブックマーク、タスクビューのフィルター設定ダイアログが簡略化
- 問題、タスクビューを右クリックで詳細をコピー可能に