新しいプロジェクトでいくつかのJavaファイルを実行しようとしています。そこで、プロジェクトを作成し、その中にファイルを入れて、メインファイルを実行してゲームを開始します。
selection does not contain a main type
というエラーが表示されます。
私はそれを実行するためにいくつかの方法を試しました:
動作しませんでした。
数時間前に学校でそれを実行したので、私はそれが機能しなければならないと確信しています。これをどのように機能させるのですか?前もって感謝します!
この方法でメインクラスを実行しようとしていることを願っています。スクリーンショットを参照してください。
いいえの場合はこの方法を試してください。はいの場合は、実行するクラスにメインメソッドi-eがあることを確認してください
public static void main(String[] args){ // some code here}
同じ定義。これがお役に立てば幸いです。
メインクラスを配置するフォルダーを右クリックし、Build Path
-> Use as Source Folder
をクリックします。
最後に、メインファイルをJavaアプリケーションとして実行します。この問題が解決されることを願っています。
他の答えはすべて有効ですが、問題が解決しない場合は、srcフォルダー内にクラスがない場合があります。その場合、Eclipseはプロジェクトの一部としてクラスを認識できません。これは、あなたが見たのと同じエラーメッセージも呼び出します。
Javaプログラムのエントリポイントはメソッドです。
public static void main(String[] args) {
//Code
}
これがない場合、プログラムは実行されません。
これを解決するには、新しいソースフォルダーを追加し、そのフォルダー内にJavaファイルを配置しました。 「ソースフォルダー」は、私が信じているフォルダーだけではありません。 Java/Eclipse用の特別なフォルダータイプで、プロジェクトを右クリックして[プロパティ]-> Java buldパス->ソースを選択し、フォルダーを追加してEclipseに追加できます。
チェックアウトするものはほとんどありません:
私は同じ問題に遭遇しました。パッケージを右クリックして修正しました->プロパティ-> Java Build Path-> Add folder(コードが存在するフォルダーを選択します)。
UbuntuからEclipseを実行しています。これと同じ問題があり、ターミナルを介してプログラムを実行できました。そこで、既存のpublic static void main(String[] args) {
をクラス宣言のすぐ下に移動し(Eclipseによって自動的にフォーマットされました)、次の起動は成功しました。その後、メインメソッドを以前の場所に戻し、今回は正常に機能しました。
すべてのファイル(file.Java)をルートフォルダーSRCの下に配置する必要があります。
メインJavaクラスファイルをsrc/main/Java
フォルダーに配置し、プロジェクトを右クリックしてJava Build Path->Source
を選択して、「Javaビルドパス」にエラーがないかどうかを確認します。
Mavenプロジェクトで作業している場合、ディレクトリレイアウトが少し異なるという事実を理解する必要があります。この場合、パッケージ名はsrc/main/Javaでなければなりません。
このため、プロジェクトを右クリックしてソースフォルダーを更新しますルートフォルダー->プロパティ-> Javaビルドパス->ソースタブ。間違った方法で追加された可能性があるため、他のすべてのソースフォルダーを削除します。次に、ソースフォルダーとしてプロジェクト/ src/main/Javaを選択します。変更を追加して適用します。 F5を使用してワークスペースを更新します。
これにより、メインタイプが認識されない問題が修正されます。
この問題は2つのプロジェクトで発生しました。 Mavenとコマンドラインは両方とも期待どおりに機能しました。問題はEclipse固有のものでした。 2つの異なるソリューション:プロジェクト1):メインメソッド宣言をクラス内の最上部、フィールドやコンストラクターなどの他のすべての宣言の上に移動します。クレイジーですが、うまくいきました。プロジェクト2):プロジェクト1)の解決策は問題を改善しませんでした。ただし、ロンボクのインポートを削除し、ゲッターメソッドを明示的に記述することで問題を解決しました
結論:Eclipseおよび/またはlombokプラグインにはバグがあります。
public static void main(String[] args)
のmain
が小文字であることを確認してください。私にとっては、大文字で持っていたときに機能しませんでした。
ファイルを保存するとき、拡張子が.Javaであることを確認してください。そうでない場合、EclipseはそれをJavaファイルとして読み取ることを認識しません。
Eclipseのプロジェクトにイメージを追加し、ビルドパスの一部にした後、これが繰り返し発生しました。解決策は、main
メソッドを含むクラスを右クリックし、[実行]-> Javaアプリケーションを選択することでした。ファイルをビルドパスに追加すると、Eclipseは自動的にそのファイルがmain
メソッドがある場所であると想定するようです。緑色の「実行」ボタンをクリックするだけでなく、「実行」メニューを使用することにより、正しいエントリポイントを指定できます。
右クリック> Run AS> Run Configurations
この画面で「メインクラス」テキストフィールドが空の場合、テキストフィールドの右側にある「検索」ボタンをクリックしてクラス名を追加し、クラスファイルを選択します。そして、構成画面の下部にある「実行」ボタンをクリックします。それでおしまい
私は同じ問題にぶつかり、public static void main(String args){...}を囲む余分な中括弧(中括弧)のペアがあることを発見しました。このメソッドは、実際にはクラスの最上位スコープにある必要があり、中括弧で囲まないでください。 Eclipseで作業する場合、このメソッドを中括弧で囲むことは可能だと思われます。これは、Eclipseで作業しているときにこの問題を確認できる1つの方法にすぎません。ハッピーコーディング!