Eclipse 4.18 の使用
Eclipse 4.18 のインストールとアプリケーション開発の最初のステップ
概要
多様性を受け入れるオープンソースの強化
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、今後の複数のリリースで段階的に用語の置き換えを実施して参ります。詳細は、Red Hat CTO である Chris Wright のメッセージ をご覧ください。
第1章 Eclipse 4.18
Red Hat Developer Tools on Red Hat Enterprise Linux 7 は、Eclipse Foundation の 2020-12 リリーストレインに基づく Eclipse 4.18 を含む RHEL プラットフォーム上の開発者向け製品です。
Eclipse 開発環境は、開発プロセスの各フェーズにツールを提供します。RHEL 7 の Eclipse 4.18 は Java 開発をサポートします。
Eclipse の詳細は、Eclipse Foundation のメインページ を参照してください。
Eclipse セッションの例
Eclipse はグラフィカル開発環境を提供するため、コマンドラインインターフェイスの代わりに使用されます。
Red Hat JBoss Middleware 用のアプリケーション開発方法の概要や OpenShift Tools のサポートについては、Red Hat Developer Studio を参照してください。
1.1. Red Hat Enterprise Linux 7 での Eclipse RPM へのアクセスの有効化
Eclipse は、RHEL 7 の Red Hat Developer Tools コンテンツセットの一部です。Eclipse をインストールするには、Red Hat Subscription Management ユーティリティーを使用して Red Hat Developer Tools、Red Hat Software Collections、および Optional リポジトリーを有効にします。
前提条件
ホストが登録され、サブスクリプションに割り当てられている。
Red Hat Subscription Management を使用してシステムを登録し、サブスクリプションに関連付ける方法は、Red Hat Subscription Management のガイドを参照してください。
手順
以下のコマンドで使用するシステム バリアント を workstation
または server
のいずれかで選択します。Red Hat は、幅広い開発ツールへアクセスするためにも server
を選択することを推奨します。
Red Hat Developer Tools にアクセスするには、
rhel-7-variant-devtools-rpms
リポジトリーを有効にします。# subscription-manager repos --enable rhel-7-variant-devtools-rpms
Red Hat Software Collections にアクセスするには、
rhel-variant-rhscl-7-rpms
リポジトリーを有効にします。# subscription-manager repos --enable rhel-variant-rhscl-7-rpms
追加のコンポーネントにアクセスするには、
rhel-7-variant-optional-rpms
リポジトリーを有効にします。# subscription-manager repos --enable rhel-7-variant-optional-rpms
オプション: 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
- Red Hat Software Collections debuginfo リポジトリーを有効にします。
# subscription-manager repos --enable rhel-__variant__-rhscl-7-debug-rpms
関連情報
-
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 をインストールする方法を説明します。
Eclipse は、AMD64 および Intel 64 のアーキテクチャーでのみ利用できます。
前提条件
- RHEL 7 では、「Red Hat Enterprise Linux 7 での Eclipse RPM へのアクセスの有効化」 に従ってリポジトリーを有効にする必要があります。
手順
- RHEL 7 では、以下のコマンドを実行します。
# yum install rh-eclipse
1.2.1. 追加の Eclipse コンポーネントのインストール
RHEL 7 の Eclipse 4.18 は Java 開発をサポートします。アップストリームリポジトリーから追加のコンポーネント (C や C++ のサポート) をインストールするには、Install New Software ウィザード、Eclipse Marketplace Client、またはコマンドラインインターフェイスを使用します。
インターネットにアクセスできなければ、追加の Eclipse コンポーネントをインストールすることはできません。
1.2.1.1. Install New Software ウィザードを使用した追加の Eclipse コンポーネントのインストール
手順
- 追加のコンポーネントのインストールに Install New Software ウィザードを使用するには、メインメニューの Help > Install New Software をクリックし、画面の指示に従います。
1.2.1.2. Eclipse Marketplace を使用した追加の Eclipse コンポーネントのインストール
追加コンポーネントのインストールに Marketplace Client を使用するには、「例: Eclipse Marketplace Client を使用した C および C++ Development Tooling (CDT) のインストール」 の手順に従います。
1.2.1.2.1. 例: Eclipse Marketplace Client を使用した C および C++ Development Tooling (CDT) のインストール
手順
- メインメニューから Help > Eclipse Marketplace を選択します。
Eclipse Marketplace で Find フィールドを使用して必要なコンポーネントを検索し (この場合は CDT)、Go を押します。
- Install ボタンをクリックしてインストールを開始し、画面の指示に従います。
1.2.1.3. コマンドラインインターフェイスを使用した追加の Eclipse コンポーネントのインストール
Red Hat は、Eclipse Marketplace または Install New Software ウィザードを使用して追加のコンポーネントを Eclipse にインストールすることを推奨します。ただし、p2 director アプリケーションを使用して、コマンドラインからコンポーネントをインストールできます。
追加のコンポーネントのインストールにコマンドラインインターフェイスを使用するには、「例: コマンドラインインターフェイスを使用した Eclipse C および C++ 開発ツールのインストール」 の手順に従います。
1.2.1.3.1. 例: コマンドラインインターフェイスを使用した Eclipse C および C++ 開発ツールのインストール
前提条件
- Eclipse が実行されていない。
手順
コマンドラインインターフェイスで、以下のコマンドを実行します。
$ scl enable rh-eclipse 'eclipse -noSplash -application org.eclipse.equinox.p2.director -repository https://download.eclipse.org/releases/2020-12 -i org.eclipse.cdt.feature.group'
- Eclipse を起動します。
Eclipse C/C++ Development Tools がインストールされている。
root として p2 director アプリケーションを実行すると、RPM の整合性に大きな問題が発生します。root として p2 director アプリケーションを実行しないでください。
関連情報
- 利用可能なコンポーネントのリストについては、「Eclipse コンポーネント」 を参照してください。
- p2 director アプリケーションの詳細は、Eclipse のオンラインドキュメントまたはビルトインヘルプシステムの Installing software using the p2 director application を参照してください。
1.3. Eclipse の起動
1.3.1. GUI からの Eclipse の起動
GUI から Eclipse を起動するには、以下の手順を実行します。
- Applications > Programming > Red Hat Eclipse の順にクリックします。
1.3.2. コマンドラインインターフェイスからの Eclipse の起動
コマンドラインから Eclipse を起動するには、シェルプロンプトで以下を入力します。
RHEL 7 の場合:
$ scl enable rh-eclipse eclipse
Eclipse の起動時に、プロジェクトの ワークスペース ディレクトリーを選択するように求められます。~/workspace/
(デフォルトのオプション) を使用するか、Browse をクリックしてカスタムディレクトリーを選択します。また、Use this as the default and do not ask again を選択すると、Eclipse がこのダイアログボックスを再度表示しなくなります。OK をクリックして選択を確定し、起動を続行します。
1.4. Eclipse コンポーネント
Eclipse 開発環境は、RPM パッケージのセットとして提供されます。このセットには、次の Eclipse コンポーネントが含まれています。
表1.1 RHEL 7 の Eclipse コンポーネント
パッケージ | 説明 |
---|---|
| Eclipse のチームプロバイダーである EGit は、Git リポジトリーと対話するための機能とプラグインを提供します。 |
| Eclipse Modeling Framework (EMF) を使用すると、構造化データモデルに基づいてアプリケーションを構築できます。 |
| Graphical Editing Framework (GEF) を使用すると、既存のアプリケーションモデルから機能豊富なグラフィカルエディターを作成できます。 |
| Eclipse Java 開発ツール (JDT) プラグイン。 |
| JGit は、Git リビジョン管理システムの Java 実装です。 |
| Eclipse Marketplace Client。 |
| Eclipse プラグインを開発するためのプラグイン開発環境。 |
| Eclipse のチームプロバイダーである Subclipse を使用すると、Subversion リポジトリーと対話できます。 |
| Eclipse Webtools プラグイン。 |
関連情報
Eclipse とそのすべての機能の詳細な説明は、このドキュメントの対象外です。詳細は、次のリソースを参照してください。
インストールされているドキュメント
- Eclipse には、統合された各機能とツールに関する幅広いドキュメントを提供するヘルプシステムが組み込まれています。これには、Eclipse のメインメニュー (Help > Help Contents) からアクセスできます。
その他のリソース
- 最新バージョンの Eclipse 開発環境の機能および改善点の一部を、「Eclipse 4.18 の変更点」 で紹介しています。
1.5. Eclipse 4.18 の変更点
Eclipse 4.18 には、バグ修正や機能拡張が数多く提供される 2020-12 リリーストレインの Red Hat Developer Tools およびプラグインが同梱されています。
このセクションでは、このリリースの主な新機能と互換性の変更点を紹介します。
RHEL 7 の重要なパッケージの更新
eclipse
4.17 → 4.18Eclipse IDE および JDT/PDE プラグインがバージョン 4.18 に更新されました。より詳細な変更点のリストは、Eclipse 4.18 - New and Noteworthy ページを参照してください。主な機能強化は、次のとおりです。
- Console 設定ページで、新しい設定 "Enable word wrap" を選択できるようになりました。
- Appearance 設定ページで、新しい "System" テーマが利用可能になりました。システムの色を使用して、オペレーティングシステムやオペレーティングシステムのテーマにスムーズに統合できます。
- Eclipse JDT が JUnit 5.7 を使用するように更新されました。
- Java 開発ツールに、新しいクリーンアップオプションとコードフォーマットオプションが追加されました。
-
Java ベースの起動設定 (Java アプリケーション、JUnit など) の Arguments タブで、新しいチェックボックスを選択して引数を
@argfile
に書き込むことができるようになりました。
eclipse-egit/jgit
5.9.0 → 5.10.0- Git 統合プラグインがバージョン 5.10.0 に更新されました。詳細は、アップストリームの EGit 5.10.0 リリースノート および JGit 5.10.0 リリースノート を参照してください。
eclipse-m2e
1.16.2 → 1.17.1- Maven 統合プラグインがバージョン 1.17.1 に更新されました。
RHEL 7 の非推奨の機能
Python 開発が、Eclipse の一部としてサポートされなくなりました。Install New Software ウィザードまたは Eclipse Marketplace から追加でインストールできます。
関連情報
新機能の使用方法は、Eclipse の インストールされているドキュメント を参照してください。
1.6. Eclipse 4.18 の既知の問題
このセクションでは、Eclipse 4.18 の既知の問題を説明します。
RHEL 7 の既知の問題
Initializing Eclipse Error Reporting System
エラーこのエラーは、古いバージョンの Eclipse で作成されたワークスペースを実行すると発生します。
この問題を回避するには、
-clean
オプションを指定して Eclipse を起動し、依存関係解決キャッシュを削除します。$ scl enable rh-eclipse "eclipse -clean"
このエラーメッセージが表示されることなく、Eclipse が起動します。
- NullPointerExceptions
サードパーティーの更新サイトからプラグインをインストールすると、NullPointerException が発生することがあります。その場合、Eclipse は起動に失敗し、ワークスペースのログファイルに
NullPointerException
が記録されます。この問題を回避するには、
-clean
オプションを指定して Eclipse を再起動して、依存関係解決キャッシュを削除します。RHEL 7 の場合:
$ scl enable rh-eclipse "eclipse -clean"
Eclipse が正常に起動します。
rh-eclipse-tycho
パッケージが、以前のコレクションと同じパッケージと競合する例:
rh-eclipse48-tycho
:結果として、
rh-eclipse48-tycho
パッケージがすでにインストールされていると、rh-eclipse-tycho
パッケージのインストールが失敗する可能性があります。Tycho が必要なのは、Eclipse をビルドまたは再ビルドする場合、またはそのプラグインに Tycho が必要な場合のみです。必要に応じて、以下のコマンドを使用して
rh-eclipse-tycho
パッケージをインストールする前にrh-eclipse48-tycho
パッケージをアンインストールします。$ yum remove rh-eclipse48-tycho
これで
rh-eclipse-tycho
パッケージのインストールが成功するようになります。rh-eclipse-scldevel
パッケージが、以前のコレクションと同じパッケージと競合する例:
rh-maven36-scldevel
:結果として、
rh-maven35-scldevel
パッケージがすでにインストールされていると、rh-maven36-scldevel
パッケージのインストールが失敗する可能性があります。この問題を解決するには、以下のコマンドを使用して、新しいバージョンの
rh-eclipse-scldevel
をインストールする前にrh-maven35-scldevel
パッケージをアンインストールします。$ yum remove rh-maven35-scldevel
これで
rh-eclipse-scldevel
のインストールが成功するようになります。- 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
この問題を回避するには、コマンドラインで、Eclipse Subclipse によって使用される Subversion の Pure Java 実装を使用します。
# yum install rh-eclipse-svnkit-cli # Command line support for SVNKit
これで、
svn
コマンドを通常使用する場所でsvn
を使用できます。$ jsvn up Updating '.': At revision 16476.
- lambda 式の評価が予期しない引数タイプにより失敗する
- コンパイル中に、条件付きブレークポイントまたは式ビューで使用される一部の lambda 式には、オブジェクト変数タイプが誤って割り当てられます。
たとえば、式 lotteryNumbers.stream().anyMatch(a → a >= 42)
は以下のエラーメッセージを評価します。
The operator >= is undefined for the argument type(s) Object, int