web-dev-qa-db-ja.com

Eclipseにmodule-info Javaファイルを新規に作成するよう依頼するのをやめるにはJavaプロジェクト作成?

新しいJavaプロジェクトを作成しようとするたびに、Eclipseはmodule-info Javaファイルをソースフォルダーに追加するかどうか尋ねてきます。かなり面倒ですこのチェックをオプトアウトするすぐに明らかなオプションはないので。

Java開発者向けのIDE、Photonリリース4.8.0

4
AUzun

最初のダイアログ「new Java project」で「>>」をクリックした後、新しいプロジェクトの作成中に表示されます。 >>終了をクリックすると、別のダイアログボックスがポップアップ表示されます。 module-info Javaファイルの作成を求める3番目のダイアログボックスが表示されますか? &は、作成と作成しないという2つのオプションを提供します。 "作成しないでください。"を選択する必要があります

ここに、ファイルmodule-info.Javaの内容のいくつかの利点を示します。jarファイルを名前付きモジュールとして宣言するには、当然、module-info.Javaファイルからコンパイルされたmodule-info.classファイルを提供する必要があります。 。モジュールシステム内の依存関係を宣言し、コンパイラとランタイムがアプリケーション内のモジュール間の境界/アクセス違反をポリシングできるようにします。ファイルの構文と使用できるキーワードを見てみましょう。

  • モジュールmodule.name – module.nameというモジュールを宣言します。
  • Module.nameが必要-モジュールがmodule.nameモジュールに依存することを指定し、このモジュールがターゲットモジュールにエクスポートされたパブリックタイプにアクセスできるようにします。
  • 推移的なmodule.nameが必要–このモジュールに依存するモジュールはすべて、自動的にmodule.nameに依存します。
  • Exports pkg.nameは、このモジュールを必要とするすべてのモジュールについて、モジュールがパッケージpkg.nameのパブリックメンバーをエクスポートすることを示しています。
  • 上記と同じようにpkg.nameをmodule.nameにエクスポートしますが、パッケージpkg.nameのパブリックメンバーを使用できるモジュールを制限します。
  • Class.nameを使用すると、現在のモジュールがサービスclass.nameのコンシューマになります。
  • Class.nameにclass.name.implレジスタを提供しますclass.name.implクラスに、class.nameサービスの実装を提供するサービスを登録します。 opens pkg.nameを使用すると、他のモジュールがリフレクションを使用してパッケージpkg.nameのプライベートメンバーにアクセスできます。
  • Pkg.nameをmodule.nameに開きますが、pkg.nameのプライベートメンバーにリフレクションアクセスできるモジュールを制限します。

Module-info.Java構文の優れた点の1つは、最新のIDEがユーザーの記述を完全にサポートすることです。おそらく、それらはすべて美しく機能します。 IntelliJ IDEAはコンテンツアシスト、まだ必要のないモジュールからクラスをインポートするときのモジュールファイルの迅速な修正などを行うことを知っています。 Eclipse IDEとNetBeans IDEが同じものを提供していることは間違いありません。

5
tushar_lokare