Eclipse 4.15 の使用
Eclipse 4.15 のインストールとアプリケーション開発の最初のステップ
概要
第1章 Eclipse 4.15 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Enterprise Linux 7 で利用できる Red Hat Developer Tools には、Eclipse 4.15 が含まれています。これは、Eclipse Foundation の 2020-03 リリーストレインに基づいています。
Eclipse は、開発プロセスの各フェーズにツールを提供する強力な開発環境です。豊富な開発エクスペリエンスを実現するためにさまざまな異種ツールを統一された環境に統合し、完全に設定可能なユーザーインターフェイスを提供して、さまざまな方法で拡張できるプラグイン可能なアーキテクチャーを特長としています。たとえば、Valgrind プラグインを使用すると、プログラマーは、Eclipse ユーザーインターフェイスを介してコマンドラインで実行されるメモリープロファイリングを実行できます。
図1.1 Eclipse セッションの例
Eclipse は、コマンドラインツールによる従来の対話に代わるグラフィカルな開発環境を提供します。コマンドラインインターフェイスを使用しない開発者には代替手段となります。従来のほぼコマンドラインベースの Linux ツール (gcc や gdb など) および Eclipse は、プログラミングに対して 2 つの異なるアプローチを提供します。
Red Hat JBoss Middleware のアプリケーション開発方法、または OpenShift Tools のサポート方法については、Red Hat Developer Studio を参照してください。
| パッケージ | 説明 |
|---|---|
|
| C/C++ Development Tooling (CDT) は、これらの 2 つの言語で開発するための機能およびプラグインを提供。 |
|
| changelog ファイルを作成および維持できる ChangeLog プラグイン。 |
|
| Eclipse Data Tools Platform プロジェクト。 |
|
| Eclipse のチームプロバイダーで、Git リポジトリーと対話するための機能およびプラグインを提供する EGit。 |
|
| EMF (Eclipse Modeling Framework) を使用すると、構造化データモデルに基づいたアプリケーションのビルドが可能。 |
|
| GCov テスト対象プログラムを Eclipse と統合する GCov プラグイン。 |
|
| 既存のアプリケーションモデルからリッチグラフィカルエディターを作成できるようにする GEF (Graphical Editing Framework)。 |
|
| Gprof パフォーマンス分析ユーティリティーを Eclipse と統合する Gprof プラグイン。 |
|
| Eclipse Java 開発ツール (JDT) プラグイン。 |
|
| Git リビジョン管理システムの Java 実装である JGit。 |
|
| Eclipse の man ページを表示できる man ページプラグイン。 |
|
| Eclipse Marketplace クライアント。 |
|
| Eclipse のタスク管理システムである Mylyn。 |
|
| Eclipse プラグインを開発するためのプラグイン開発環境。 |
|
| perf ツールを Eclipse と統合する Perf プラグイン。 |
|
| Eclipse 向けの Python IDE の完全な機能。 |
|
| 拡張可能な remote-services フレームワークを提供する Remote Services プラグイン。 |
|
| RPM 仕様ファイルの維持を可能にする Eclipse Spec File Editor。 |
|
| SystemTap と Eclipse を統合する SystemTap プラグイン。 |
|
| Subclipse は、Eclipse のチームプロバイダーで、Subversion リポジトリーと対話するための機能とプラグインを提供。 |
|
| Valgrind を Eclipse と統合する Valgrind プラグイン。 |
|
| Eclipse Webtools プラグイン。 |
1.1. Red Hat Enterprise Linux 7 での Eclipse へのアクセス リンクのコピーリンクがクリップボードにコピーされました!
Eclipse は、Red Hat Developer Tools コンテンツセットの一部として配布されるオファリングで、Red Hat Enterprise Linux 7 をデプロイしているお客様が利用できます。Eclipse をインストールするには、Red Hat Subscription Management を使用して、Red Hat Developer Tools および Red Hat Software Collections リポジトリーを有効にします。
システムの バリアント (
workstationまたはserver) を選択し、以下のコマンドを変更します。注記開発者には、Red Hat Enterprise Linux Server を使用して、多岐にわたる開発ツールにアクセスすることを推奨しています。
rhel-7-variant-devtools-rpmsリポジトリーを有効にします。subscription-manager repos --enable rhel-7-variant-devtools-rpms
# subscription-manager repos --enable rhel-7-variant-devtools-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow rhel-variant-rhscl-7-rpmsリポジトリーを有効にします。subscription-manager repos --enable rhel-variant-rhscl-7-rpms
# subscription-manager repos --enable rhel-variant-rhscl-7-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow rhel-7-variant-optional-rpmsリポジトリーを有効にします。subscription-manager repos --enable rhel-7-variant-optional-rpms
# subscription-manager repos --enable rhel-7-variant-optional-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow
リポジトリーが有効になります。「Eclipse のインストール」 で説明されているように、Red Hat Eclipse をインストールしてください。
Red Hat Developer Tools debuginfo リポジトリーの有効化
この手順はオプションです。
Red Hat Developer Tools は、リポジトリーに含まれるすべてのアーキテクチャー依存 RPM の debuginfo パッケージも提供します。これらのパッケージは、コアファイル分析や Eclipse 自体のデバッグに役立ちます。
Red Hat Developer Tools の
debuginfoリポジトリーを有効にします。variant は、Red Hat Enterprise Linux システムバリアント (serverまたはworkstation) に置き換えます。subscription-manager repos --enable rhel-7-variant-devtools-debug-rpms subscription-manager repos --enable rhel-variant-rhscl-7-debug-rpms
# subscription-manager repos --enable rhel-7-variant-devtools-debug-rpms # subscription-manager repos --enable rhel-variant-rhscl-7-debug-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow
debuginfo パッケージのインストール、概要、および使用方法の詳細は、実行中のアプリケーションのデバッグ を参照してください。
関連情報
- Red Hat Subscription Management を使用してシステムを登録し、サブスクリプションに関連付ける方法は、Red Hat Subscription Management のガイドを参照してください。
- Red Hat Software Collections のサブスクリプションに関する詳細は、Red Hat Developer Toolset ユーザーガイド の セクション 1.4 Red Hat Developer Toolset へのアクセス を参照してください。
1.2. Eclipse のインストール リンクのコピーリンクがクリップボードにコピーされました!
Eclipse 開発環境は、RPM パッケージのコレクションとして提供されます。
利用可能なコンポーネントのリストについては、表1.1「rh-eclipse パッケージコレクションに含まれる Eclipse コンポーネント:」 を参照してください。
Eclipse は C、C++、および Java 開発を完全にサポートしますが、Fortran プログラミング言語はサポートされません。
rh-eclipse コレクションには rh-maven35 コレクションが必要です。
前提条件
- 「Red Hat Enterprise Linux 7 での Eclipse へのアクセス」 に従ってリポジトリーを有効にしている。
手順
Eclipse をインストールするには、
rootユーザーとして次のコマンドを実行します。yum install rh-eclipse
# yum install rh-eclipseCopy to Clipboard Copied! Toggle word wrap Toggle overflow
1.3. Eclipse の使用 リンクのコピーリンクがクリップボードにコピーされました!
Eclipse を起動する方法:
Applications > Programming > Red Hat Eclipse の順にクリックするか、シェルプロンプトで以下を入力します。
scl enable rh-eclipse eclipse
$ scl enable rh-eclipse eclipseCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
起動中に、Eclipse はプロジェクトを保管するディレクトリーである ワークスペース を選択するように求められます。デフォルトのオプションである
~/workspace/を使用するか、Browse をクリックしてファイルシステムを閲覧し、カスタムディレクトリーを選択します。さらに、Use this as the default and do not ask again のチェックボックスを選択すると、次回この開発環境を実行するときに Eclipse がこのダイアログボックスを表示しないようにすることもできます。 - OK をクリックして選択を確定し、起動に進みます。
1.3.1. Red Hat Developer Toolset ツールチェーンの使用 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Developer Toolset の GNU Compiler Collection および binutils をサポートする Eclipse を使用するには、以下を実行します。
-
devtoolset-9-toolchainがインストールされていることを確認し、「Eclipse の使用」 の説明に従ってアプリケーションを実行します。rh-eclipseコレクションは、デフォルトで Red Hat Developer Toolset ツールチェーンを使用します。
システムに devtoolset-9-toolchain パッケージをインストールする方法の詳細な手順は、Red Hat Developer Toolset ユーザーガイド の セクション 1.5Red Hat Developer Toolset のインストール を参照してください。
GNU コンパイラーコレクション の Red Hat Enterprise Linux バージョンを使用して以前にビルドしたプロジェクトの以前のビルド結果をすべて破棄します。破棄するには、Eclipse でプロジェクトを開き、メニューから Project > Clean を選択します。
1.3.2. Red Hat Enterprise Linux ツールチェーンの使用 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Enterprise Linux で配布されるツールチェーンへのサポートのある Eclipse を使用するには、プロジェクトの設定を変更して、Red Hat Enterprise Linux システムバージョンの gcc、g++、および as への絶対パスを使用します。
現在のプロジェクトでツールの Red Hat Enterprise Linux システムバージョンを明示的に使用するように Eclipse を設定するには、以下を実行します。
- C/C++ パースペクティブで Project > Properties をクリックし、プロジェクトプロパティーを開きます。
- ダイアログボックス左側のメニューで、C/C++ Build > Settings をクリックします。
- Tool Settings タブをクリックします。
C プロジェクトで作業している場合は、以下を行います。
GCC C Compiler または Cross GCC Compiler を選択し、Command フィールドの値を以下のように変更します。
/usr/bin/gcc
/usr/bin/gccCopy to Clipboard Copied! Toggle word wrap Toggle overflow GCC C Linker または Cross GCC Linker を選択し、Command フィールドの値を以下のように変更します。
/usr/bin/gcc
/usr/bin/gccCopy to Clipboard Copied! Toggle word wrap Toggle overflow GCC C Assembler または Cross GCC Assembler を選択し、Command フィールドの値を以下のように変更します。
/usr/bin/as
/usr/bin/asCopy to Clipboard Copied! Toggle word wrap Toggle overflow
C++ プロジェクトで作業している場合:
GCC C Compiler* または *Cross G Compiler を選択し、Command フィールドの値を以下のように変更します。
/usr/bin/g++
/usr/bin/g++Copy to Clipboard Copied! Toggle word wrap Toggle overflow GCC C Compiler または Cross GCC Compiler を選択し、Command フィールドの値を以下のように変更します。
/usr/bin/gcc
/usr/bin/gccCopy to Clipboard Copied! Toggle word wrap Toggle overflow GCC C Linker* または *Cross G Linker を選択し、Command フィールドの値を以下のように変更します。
/usr/bin/g++
/usr/bin/g++Copy to Clipboard Copied! Toggle word wrap Toggle overflow GCC C Assembler または Cross GCC Assembler を選択し、Command フィールドの値を以下のように変更します。
/usr/bin/as
/usr/bin/asCopy to Clipboard Copied! Toggle word wrap Toggle overflow
- OK をクリックして設定の変更を保存します。
1.4. 関連情報 リンクのコピーリンクがクリップボードにコピーされました!
Eclipse とそのすべての機能の詳細な説明は、このドキュメントの対象外です。詳細は、次のリソースを参照してください。
インストールされているドキュメント
- Eclipse には、統合された各機能とツールに関する幅広いドキュメントを提供するヘルプシステムが組み込まれています。
関連項目
- 2章Eclipse 4.15 の変更点 では、Developer Tools の以前のリリースに含まれている Eclipse 開発環境の機能および改善点の一部を紹介しています。
- ユーザーガイドの Red Hat Developer Toolset の章では、Red Hat Developer Toolset の概要と、システムにインストールする方法の詳細について説明しています。
- ユーザーガイドの GNU コンパイラーコレクション (GCC) の章では、コマンドラインの C、C++、および Fortran で書かれたプログラムをコンパイルする方法について説明しています。
第2章 Eclipse 4.15 の変更点 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Developer Tools は、Eclipse 4.15 および 2020-03 リリーストレインのプラグインとともに配布され、多数のバグ修正と機能拡張を提供します。
以下は、このリリースの新機能と互換性の変更点をまとめたリストです。
これらの新機能の使用方法は、組み込み Eclipse ドキュメントを参照してください。
重要なパッケージの更新
eclipse4.14 → 4.15: Eclipse IDE および JDT/PDE プラグインがバージョン 4.15 に更新されました。より詳細な変更点のリストは、Eclipse 4.15 - New and Noteworthy ページを参照してください。主な機能は次のとおりです。- Java エディターのコンテンツアシストが、サブワードパターンをサポートするようになりました。
- UI のフリーズを防ぐために、Java エディターのコード補完を別の非 UI スレッドで実行できるようになりました。
- さまざまな新しいクリーンアップオプションとクイックフィックスが追加されました。
-
Optionalステートメントをラップするためのクイックフィックスが追加されました。 - リソースリーク分析が改善されました。
- デバッグ式が、ラムダ式とメソッド参照をサポートするようになりました。
-
コンソールビューが、ASCII 制御文字 (
\f- フォームフィードおよび\v- 垂直タブ) を解釈できるようになりました。 - コンソールビューラベルに、プロセスの起動時間に加えて、終了時間が表示されるようになりました。
- インタラクティブなパフォーマンスが向上しました。
eclipse-cdt9.10.0 → 9.11.0: C/C++ Development Tooling がバージョン 9.11.0 に更新されました。詳細は、アップストリームの CDT 9.11.0 リリースノート を参照してください。以下は、主な変更点です。- C++14 のサポートの向上: 2 進整数リテラルと桁区切り記号
- 新しいコード分析チェッカー: 変数マスキングとマジックナンバー
-
eclipse-linuxtools7.5.0 → 7.6.0: Linux Tools プラグインがバージョン 7.6.0 に更新され、チャート機能が改善されました。詳細は、アップストリームの Linux Tools 7.6.0 リリースノート を参照してください。 -
eclipse-pydev7.4.0 → 7.5.0: PyDev プラグインがバージョン 7.4.0 に更新され、デバッガーと Cython の改善が導入されました。詳細は、アップストリームの PyDev 7.5.0 リリースノート を参照してください。 eclipse-egit/jgit5.6.0 → 5.7.0: Git 統合プラグインがバージョン 5.7.0 に更新されました。詳細は、アップストリームの EGit 5.7.0 リリースノート および JGit 5.7.0 リリースノート を参照してください。以下は、主な変更点です。-
新しい機能が追加されました。
pullなどのコマンドをリポジトリーグループに対して使用できるようになりました。 - コミットの比較が改善されました。統合された差分を使用してコミットを検索できるようになりました。
-
新しい機能が追加されました。
-
eclipse-webtools3.15 → 3.17: Web Tools Platform がバージョン 3.17 に更新されました。この更新には、一般的なコードの改善とバグ修正が含まれています。詳細は、アップストリームの Web Tools Platform 3.16 - New and Noteworthy および Web Tools Platform 3.17 - New and Noteworthy ページを参照してください。
非推奨
- SWTBot が削除されました。
SWTBot ツールはコレクションから削除されました。アップストリームの SWTBot 更新サイト からインストールできます。そちらの指示に従ってください。
- TestNG が削除されました。
TestNG フレームワークのサポートは終了しました。TestNG は Marketplace Client (MPC) からは入手できなくなりましたが、TestNG プラグインは TestNG 更新サイト からインストールできます。ただし、TestNG の NoClassDefFoundError バグ が原因で、TestNG P2 Feature バージョン 7.1.0 の使用中に NoClassDefFoundError が発生します。この問題を回避するには、TestNG P2 Feature 更新サイト から TestNG P2 Feature の新しいバージョンをインストールします。
第3章 Eclipse 4.15 の既知の問題 リンクのコピーリンクがクリップボードにコピーされました!
このセクションでは、Eclipse 4.15 の既知の問題を説明します。
3.1. Eclipse が起動時に応答しなくなる リンクのコピーリンクがクリップボードにコピーされました!
原因: スレッドのデッドロックが原因で、Eclipse が起動時に応答しなくなることがあります。
結果: ワークスペース選択ダイアログが表示されずに Eclipse スプラッシュスクリーンのみが表示されます。
回避策: PID を特定し、プロセスの kill シグナルを送信することで、問題のある Eclipse プロセスを終了します。以下に例を示します。
jps 30066 Jps 31631 org.eclipse.equinox.launcher_1.5.300.v20190308-0658.jar kill 31631
$ jps
30066 Jps
31631 org.eclipse.equinox.launcher_1.5.300.v20190308-0658.jar
$ kill 31631
結果: 問題のあるプロセスが終了したら、Eclipse を再起動します。
3.2. 古い Eclipse バージョンで作成されたワークスペースを実行すると、"Initializing Eclipse Error Reporting System" エラーが発生する リンクのコピーリンクがクリップボードにコピーされました!
回避策: -clean オプションを使用して Eclipse を再起動し、依存関係解決キャッシュを消去します。
scl enable rh-eclipse "eclipse -clean"
$ scl enable rh-eclipse "eclipse -clean"
結果: Eclipse はこのエラーメッセージなしで起動します。
3.3. サードパーティーソースからの一部のプラグインで NullPointerException が発生する リンクのコピーリンクがクリップボードにコピーされました!
サードパーティーの更新サイトからプラグインがインストールされていると、Eclipse が起動に失敗し、ワークスペースのログファイルに NullPointerException が記録されることがあります。
回避策: -clean オプションを使用して Eclipse を再起動し、依存関係解決キャッシュを消去します。
scl enable rh-eclipse "eclipse -clean"
$ scl enable rh-eclipse "eclipse -clean"
結果: Eclipse が正常に起動します。
3.4. debuginfo 競合 リンクのコピーリンクがクリップボードにコピーされました!
原因: ユーザーがこのコレクションの debuginfo パッケージ (例: rh-eclipse-eclipse-cdt-debuginfo) をインストールしようとすると、内容が以前のコレクションにある同じパッケージと競合する可能性があります。
結果: rh-eclipse48 コレクションの同じ debuginfo パッケージがインストールされている場合、rh-eclipse debuginfo パッケージのインストールに失敗する可能性があります。
回避策: rh-eclipse コレクションに debuginfo を使用するには、まず次のコマンドで rh-eclipse48 コレクションから debuginfo パッケージをアンインストールします。
yum remove rh-eclipse48*debuginfo
$ yum remove rh-eclipse48*debuginfo
結果: rh-eclipse コレクションからの debuginfo パッケージのインストールが正常に実行されます。
3.5. RHSCL rh-maven33-scldevel と rh-maven35-scldevel パッケージ間の競合 リンクのコピーリンクがクリップボードにコピーされました!
RHSCL rh-maven33-scldevel と rh-maven35-scldevel パッケージの間に競合があります。これは rh-eclipse-scldevel パッケージに影響します (このパッケージはデフォルトではインストールされないことに注意してください)。
rh-eclipse-scldevel パッケージと rh-eclipse46-scldevel パッケージを並存させることはできません。
3.6. pip 統合で PyDev ユーザーに問題が発生する可能性がある リンクのコピーリンクがクリップボードにコピーされました!
Python SCL によって事前にインストールされているモジュールはアンインストールできません。アンインストールしようとすると、パーミッション拒否エラーが発生します。
3.7. Python モジュールを管理するための PyDev ショートカットが機能しない リンクのコピーリンクがクリップボードにコピーされました!
Ctrl+2 ショートカットを使用して pip を選択しても、適切に機能しません。
結果: このショートカットを使用しようとすると、ワークスペースログに SWTException が記録されます。
回避策: ユーザーは、PyDev > Interpreters 設定を使用して Python モジュールを引き続き管理できます。
3.8. Eclipse Subclipse とベース RHEL Subversion 間の非互換性 リンクのコピーリンクがクリップボードにコピーされました!
Eclipse Subclipse で作成した Subversion リポジトリーのワーキングコピーは、Subversion のベース RHEL バージョンと互換性がありません。このような作業コピーで svn コマンドを使用すると、以下のエラーが発生する可能性があります。
svn up svn: E155021: This client is too old to work with the working copy
$ svn up
svn: E155021: This client is too old to work with the working copy
回避策: コマンドラインで Eclipse Subclipse によって使用される Subversion の Pure-Java 実装を使用します。
yum install rh-eclipse-svnkit-cli # Command line support for SVNKit
# yum install rh-eclipse-svnkit-cli # Command line support for SVNKit
これで、svn コマンドを通常使用する場所で svn を使用できます。
jsvn up Updating '.': At revision 16476.
$ jsvn up
Updating '.':
At revision 16476.
3.9. Tycho 競合 リンクのコピーリンクがクリップボードにコピーされました!
原因: rh-eclipse-tycho パッケージが以前のコレクションに含まれる同じパッケージと競合しています (例: rh-eclipse48-tycho)。
結果: rh-eclipse48-tycho パッケージがすでにインストールされていると、rh-eclipse-tycho パッケージのインストールが失敗する可能性があります。
回避策: Tycho を必要とするのは、Eclipse やそのプラグインをビルドまたは再ビルドするユーザーのみであることに注意してください。必要に応じて、以下のコマンドを使用して rh-eclipse-tycho パッケージをインストールする前に rh-eclipse48-tycho パッケージをアンインストールします。
yum remove rh-eclipse48-tycho
$ yum remove rh-eclipse48-tycho
結果: rh-eclipse-tycho パッケージのインストールが正常に実行されます。