エラーを解決する方法:NetBeansにメインクラスが見つかりません

How Solve Error No Main Class Found Netbeans



NetBeansを使用していて、「メインクラスが見つかりません」という非常に苛立たしいエラーが発生したことがありますか。この記事では、その問題を解決する方法を紹介します。ただし、最初に、プロセスを理解できるように、いくつかの背景から始める必要があります。

NetBeansが実際に何であるかを知ることから始めましょう。つまり、NetBeansは 統合開発環境 (IDE)元々使用されていた Java ただし、Java開発に加えて、PHP、C ++、C、HTML5、JavaScriptなどの他の言語の拡張機能もあります。次のようなさまざまなオペレーティングシステムで実行できます。 ウィンドウズマックOSLinux 、 と Solaris 。 NetBeans IDEなどを含むNetBeansベースのアプリケーションは、サードパーティの開発者が拡張することもできます。 2006年7月、SunのCommon Development and Distribution License(CDDL)の下で、NetBeansIDEのライセンスが取得されました。最近、NetBeansIDEとPlatformがOracleからApacheFoundationに寄贈されました。 2019年4月に、ビジネス開発サイクルを経てトップレベルプロジェクトとして渡されたため、現在NetBeansは Apacheライセンス2.0







NetBeans統合開発環境は、オープンソースプラットフォームです。 NetBeans IDEは、以下を含むすべてのJavaアプリケーションタイプの開発をサポートします。 Java SEJavaFX Java MEウェブEJB 、 と モバイル 箱から出してすぐに使えるアプリケーション。 IDEの他の機能には、Mavenサポート、リファクタリング、 ベースのプロジェクトシステム、 バージョン管理 (Gitをサポートし、 CVS 、Mercurial、 Subversionクリアケース )。



NetBeansは、モジュールとも呼ばれる一連のモジュラーコンポーネントからソフトウェアアプリケーションを構築する機能を提供します。これらのモジュールは、IDEのすべての基本機能を提供します。それぞれに、異なる言語のサポート、CVSバージョン管理システムとSVNの編集またはサポートなど、明確に定義された機能があり、1回のダウンロードでJavaの開発をサポートするすべてのコンポーネントを取得し、ユーザーはすぐに作業を開始できますが、他の言語と新機能については、NetBeansを拡張する必要があり、新しいモジュールとパッケージをインストールする必要があります。例えば、 Sun Java Studio Creator から サンマイクロシステムズ 、Sun Java Studio Enterprise、および サンスタジオ すべてNetBeansIDEに基づいています。



主な方法

mainメソッドに移ると、Java言語では、mainメソッドなしでJavaアプリケーションを構築することはできません。 Javaアプリケーションは、main()メソッドを持つパブリックJavaクラスとして定義されます。





  • NS 主要 ()関数は、あらゆるアプリケーションの開始点として機能します。プログラムが実行されるときはいつでも、mainが最初に実行される関数です。他のすべての関数は、main関数から呼び出すことができます。古典的な標準的な方法では、クラスの他のインスタンスを使用して機能する1つの主要な関数があります
  • main()メソッドがないと、JVMはプログラムを実行しません。
  • Javaのメインメソッド リターンタイプは無効です。つまり、何も返さないため、リターンタイプは無効です。これが行われたのは、メインが終了するとJavaプログラムが終了するため、プログラムを単純に保ち、あらゆるタイプのメモリリークを回避するために、returntypeをnullにする必要があるためです。
  • メソッドのシグネチャは常に次のとおりです。publicstaticvoid 主要 (String [] args)

公衆: これはアクセス指定子です。 publicキーワードは、Java仮想マシンがプログラムの実行ポイントを識別できるように、メインの前に使用されます。アクセス指定子がパブリック以外、つまりプライベートまたは保護されている場合、JVMには表示されず、プログラムはその実行ポイントを認識しません。

静的: 静的になる関数は、キーワードstaticを使用して静的にすることができます。静的メソッドは、オブジェクトを作成せずに実行または呼び出すことができる関数であるため、メイン関数を呼び出すためにオブジェクトは必要ありません。オブジェクトを作成せずにmainメソッドを呼び出す必要があるため、staticが使用されます



空所: これは、nullの実行タイプを指定します。コンパイラは、メソッドがいかなる種類の値も返さないことを認識します。

主要(): これは、Java仮想マシンですでに定義されているデフォルトの構文です。 JVMはこの関数を呼び出して、プログラムを1行ずつコンパイルし、関数の完了後にコンパイルを終了します。 mainメソッドもオーバーロードできます

文字列args []: main()メソッドは、ユーザーからのある種のデータ入力も受け入れます。 cmd行引数を介して文字列の配列を受け入れます。コマンドライン引数は、文字列の配列であるargsパラメーターを介して渡されます。

エラーの解決

これで、JVMでプログラムを実行するためにmainメソッドが非常に重要であることがわかりました。以下は、NetBeansに見つからないメインクラスのエラーを克服するための可能な解決策です。

mainを使用してプロジェクトを実行する標準的な方法:

  • プロジェクトエクスプローラーでプロジェクトを右クリックします
  • [プロパティ]を選択します
  • [実行]を選択します
  • メインクラスが、プログラムの実行開始時に最初に実行するクラスであることを確認してください
  • 完全修飾名、つまりmypackage.MyClassを使用してください
  • [OK]をクリックします
  • プロジェクトを実行する

ファイルを実行するだけの場合は、パッケージエクスプローラーからクラスを右クリックし、[ファイルの実行]、または(Alt + R、F)、または(Shift + F6)をクリックします。

mainの正しい構文署名:

  • メインクラスのダイアログウィンドウから参照しているときに、NetBeansがクラスを見つけられないという問題に直面することがよくあります。
  • メインメソッドに適切なシグネチャがある可能性があります。例:パブリックアクセス指定子を忘れた
  • 修飾子publicおよびstaticは、どちらの順序(publicstaticまたはstaticpublic)でも記述できますが、慣例では、上記のようにpublicstaticを使用します。
  • Args:引数には任意の名前を付けることができますが、最も一般的に使用される規則はargvまたはargsです。

メインクラスの指定:

  • プロジェクトのプロパティで、[実行]タブでメインクラスを指定していることを確認してください。
  • さらに、プロパティでメインクラスを確認して問題を回避するには、メインクラスを指定すると問題の解決に役立ちます。

メモリ/キャッシュスペースエラー:

  • メモリ不足エラーが原因で、NetBeansがメインクラスをロードまたは検索できない場合があります
  • プロジェクトノードを右クリックして、[構成の設定]に移動します
  • アプリケーションのメインクラスを選択します
  • 次に、クリーンアップしてビルドします

これを試しても機能しない場合は、次のようにします。

  • キャッシュフォルダからインデックスファイルを削除して、キャッシュをクリーンアップします

に移動 ホーム/ NetBeans / nb / var / cache を削除します キャッシュ フォルダ。次に、NetBeans IDEを再度開き、プロジェクトを実行します

それでも問題が解決しない場合は、次の手順を試してください。

  1. プロジェクトエクスプローラーからプロジェクトを選択します
  2. メニューバーから[実行]を選択します

[コンパイル]を選択します