Eclipse 4.13.0 の使用
Eclipse 4.13.0 のインストールとアプリケーション開発の最初のステップ
概要
第1章 Eclipse 4.13.0 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Enterprise Linux 7 で利用できる Red Hat Developer Tools には、Eclipse 4.13.0 が含まれています。これは、Eclipse Foundation の 2019-09 リリーストレインに基づいています。
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) を使用すると、構造化データモデルに基づいたアプリケーションのビルドが可能。 |
|
| Eclipse エラー報告ツール。 |
|
| 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 プラグイン。 |
|
| 同期したプロジェクトにサポートを提供する PTP プロジェクト のサブセット。 |
|
| 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.0-toolchainがインストールされていることを確認し、「Eclipse の使用」 の説明に従ってアプリケーションを実行します。rh-eclipseコレクションは、デフォルトで Red Hat Developer Toolset ツールチェーンを使用します。
システムに devtoolset-9.0-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.13.0 の変更点 では、Developer Tools の以前のリリースに含まれている Eclipse 開発環境の機能および改善点の一部を紹介しています。
- ユーザーガイドの Red Hat Developer Toolset の章では、Red Hat Developer Toolset の概要と、システムにインストールする方法の詳細について説明しています。
- ユーザーガイドの GNU コンパイラーコレクション (GCC) の章では、コマンドラインの C、C++、および Fortran で書かれたプログラムをコンパイルする方法について説明しています。
第2章 Eclipse 4.13.0 の変更点 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Developer Tools は、Eclipse 4.13.0 および 2019-09 リリーストレインのプラグインと合わせて配布され、多数のバグ修正と機能拡張を提供します。
以下は、このリリースの新機能と互換性の変更点をまとめたリストです。
これらの新機能の使用方法は、組み込み Eclipse ドキュメントを参照してください。
重要なパッケージの更新
eclipse4.12.0 → 4.13.0 : Eclipse IDE および JDT/PDE プラグインが 4.13 に更新されました。主な機能は次のとおりです。JUnit サポートが 5.5.1 に更新
詳細は、https://junit.org/junit5/docs/5.5.1/release-notes/ を参照してください。
- Java エディターのクイックフィックス (Ctrl+1 でアクセス可能)。
- Java フォーマッターへの新規オプションの追加、および高度な新しいコンテンツアシストモードの追加
- 新しい "Quick Search" ダイアログ (Ctrl+Alt+Shift+L でアクセス可能)。UI やユーザビリティーの強化。
プラグイン開発を支援するための新しい "Features" ビューの追加
詳細は、アップストリームのリリースノート https://www.eclipse.org/eclipse/news/4.13/ を参照してください。
eclipse-cdt9.8.0 → 9.9.0: C/C++ Development Tooling が 9.9.0 に更新され、C++17 機能の構造化バインディング宣言のサポートが追加されて、その他にもさまざまな使いやすさが改善されました。詳細は、アップストリームのリリースノート (https://projects.eclipse.org/projects/tools.cdt/releases/9.9.0/bugs) を参照してください。
eclipse-linuxtools7.3.0 → 7.4.0: Linuxtools プラグインが 7.4.0 に更新され、Red Hat Developer Toolset 9 がインストールされている場合の GCC 9 のサポートが追加され、Perfを優先してOProfileプロファイリングサポートが廃止されました。詳細は、アップストリームのリリースノート (https://projects.eclipse.org/projects/tools.linuxtools/releases/7.4.0/bugs) を参照してください。
eclipse-webtools3.14.0 → 3.15.0: Web ツールプラットフォームが 3.15.0 に更新され、Web 関連エディターのコンテンツアシストが強化されて、HTML 5 のサポートが改善されました。詳細は、アップストリームのリリースノート (https://projects.eclipse.org/projects/webtools/releases/3.15-2019-09/bugs) を参照してください。
eclipse-pydev7.2.1 → 7.3.0: PyDev プラグインが 7.3.0 に更新され、デバッガーが改善されて、英語以外のロケールのコード補完が改善されました。詳細は、アップストリームのリリースノート (http://www.pydev.org/history_pydev.html) を参照してください。
eclipse-egit/jgit5.4.0 → 5.5.0: Git 統合プラグインが 5.5.0 に更新され、軽量タグのサポート、使いやすさの向上、SSH 接続の新しい設定オプションが追加されました。詳細は、アップストリームのリリースノート (https://projects.eclipse.org/projects/technology.jgit/releases/5.5.0 および https://projects.eclipse.org/projects/technology.egit/releases/5.5.0) を参照してください。
非推奨
次のパッケージがコレクションから削除されました。
-
eclipse-dltk: Dynamic Language Toolkit プラグインは、このリリースで削除されました。Tcl、Shell Script、Ruby ツールが Eclipse Marketplace で利用できるようになりました。 -
eclipse-linuxtools-oprofile: OProfile は Perf に置き換えられました。OProfile 統合プラグインのユーザーは、eclipse-linuxtools-perfパッケージをインストールして Perf 統合プラグインを取得する必要があります。
第3章 Eclipse 4.13.0 の既知の問題 リンクのコピーリンクがクリップボードにコピーされました!
このセクションでは、Eclipse 4.13.0 の既知の問題を説明します。
3.1. Java 13 サポートプラグインが機能しない リンクのコピーリンクがクリップボードにコピーされました!
Eclipse Marketplace Client の Java 13 サポートプラグインが Red Hat Developer Tools Eclipse 4.13.0 で動作しない。
3.2. 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.3. 古い Eclipse バージョンで作成されたワークスペースを実行すると、"Initializing Eclipse Error Reporting System" エラーが発生する リンクのコピーリンクがクリップボードにコピーされました!
回避策: -clean オプションを使用して Eclipse を再起動し、依存関係解決キャッシュを消去します。
scl enable rh-eclipse "eclipse -clean"
$ scl enable rh-eclipse "eclipse -clean"
結果: Eclipse はこのエラーメッセージなしで起動します。
3.4. サードパーティーソースからの一部のプラグインで NullPointerException が発生する リンクのコピーリンクがクリップボードにコピーされました!
サードパーティーの更新サイトからプラグインがインストールされていると、Eclipse が起動に失敗し、ワークスペースのログファイルに NullPointerException が記録されることがあります。
回避策: -clean オプションを使用して Eclipse を再起動し、依存関係解決キャッシュを消去します。
scl enable rh-eclipse "eclipse -clean"
$ scl enable rh-eclipse "eclipse -clean"
結果: Eclipse は通常どおりに起動します。
3.5. debuginfo 競合 リンクのコピーリンクがクリップボードにコピーされました!
原因: ユーザーがこのコレクションの debuginfo パッケージ (例: rh-eclipse-eclipse-cdt-debuginfo) をインストールしようとすると、内容が以前のコレクションにある同じパッケージと競合する可能性があります。
結果: rh-eclipse48 コレクションの同じ debuginfo パッケージがインストールされている場合、rh-eclipse debuginfo パッケージのインストールに失敗する可能性があります。
回避策: rh-eclipse コレクションに debuginfo を使用するには、コマンド yum remove rh-eclipse48*debuginfo を使用して、最初に rh-eclipse48 コレクションの debuginfo パッケージをアンインストールする必要があります。
結果: rh-eclipse コレクションからの debuginfo パッケージのインストールが正常に実行されます。
3.6. RHSCL rh-maven33-scldevel と rh-maven35-scldevel パッケージ間の競合 リンクのコピーリンクがクリップボードにコピーされました!
RHSCL rh-maven33-scldevel と rh-maven35-scldevel パッケージの間に競合があります。これは rh-eclipse-scldevel パッケージに影響します (このパッケージはデフォルトではインストールされないことに注意してください)。
rh-eclipse-scldevel パッケージと rh-eclipse46-scldevel パッケージを並存させることはできません。
3.7. pip 統合で PyDev ユーザーに問題が発生する可能性がある リンクのコピーリンクがクリップボードにコピーされました!
Python SCL によって事前にインストールされるモジュールはアンインストールできません。これを試行すると、パーミッション拒否エラーが発生します。
3.8. Python モジュールを管理するための PyDev ショートカットが機能しない リンクのコピーリンクがクリップボードにコピーされました!
Ctrl+2 ショートカットを使用して pip を選択しても、適切に機能しません。
結果: このショートカットを使用しようとすると、ワークスペースログに SWTException が記録されます。
回避策: ユーザーは、PyDev > Interpreters 設定を使用して Python モジュールを引き続き管理できます。
3.9. 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.10. Tycho 競合 リンクのコピーリンクがクリップボードにコピーされました!
原因: rh-eclipse-tycho パッケージが以前のコレクションに含まれる同じパッケージと競合しています (例: rh-eclipse48-tycho)。
結果: rh-eclipse48-tycho パッケージがすでにインストールされている場合、rh-eclipse-tycho パッケージのインストールに失敗することがあります。
回避策: Tycho を必要とするのは、Eclipse やそのプラグインをビルドまたは再ビルドするユーザーのみであることに注意してください。必要に応じて、rh-eclipse-tycho パッケージをインストールする前に、yum remove rh-eclipse48-tycho コマンドを使用して rh-eclipse48-tycho パッケージをアンインストールします。
結果: rh-eclipse-tycho パッケージのインストールが正常に実行されます。