javaのクラスを実行したい
javaでジャンケンをするクラスをターミナルで実行したいのですが
実行できません。ちなみにコンパイルはできます。
ジャンケンゲームの内容は5回勝負で何回勝ったか勝敗を出すゲームです。ただし、あいこもループする。
環境はsublimetext と ターミナルです。
発生している問題・エラーメッセージ
エラーメッセージ$ java janken battle エラー: メイン・クラスjankenを検出およびロードできませんでした 原因: java.lang.NoClassDefFoundError: janken/java/Janken (wrong name: janken)
該当のソースコードpackage janken.java;
class Janken{
public static void main(String[]args){
int player = 0;
int cpu = 0;
int winCount = 0;
int loseCount = 0;
System.out.println("私とジャンケンで勝負しましょう。"); for(int i=0; i<6; i++){ player = Battle.player(); cpu = Battle.cpu(); Battle.battle(loseCount, winCount, player, cpu); if(winCount >loseCount){ System.out.println(winCount + "勝であなたの勝ちです!"); }else if(winCount == loseCount){ System.out.println("引き分けです!"); }else if(winCount < loseCount){ System.out.println(loseCount + "敗であなたの負けです。"); }
}
}
}
package janken.java;
class Battle{
public static int player(){
String[]shape = {"グー", "チョキ","パー"};
System.out.println("最初はグー、ジャンケン...");
System.out.println("数字を入力してください。グー = 0、チョキ = 1、パー =2のどれかを入力してください。");
int player = new java.util.Scanner(System.in).nextInt();
if (player < 3){
System.out.println("ぽん!→→→player:" + shape[player]);
}else{
System.out.println("0、1、2以外は打ち込まないで下さい");
}
return player;
}
public static int cpu(){
String[]shape = {"グー", "チョキ","パー"};
int cpu = new java.util.Random().nextInt(3);
System.out.println("ぽん!→→→cpu:" + shape[cpu]);
return cpu;
}
public static void battle(int loseCount, int winCount, int player, int cpu){ String draw = "DRAW"; String win = "You WIN"; String lose = "You LOSE"; switch(cpu){ case 0: if(player == 0){ System.out.println(draw); }else if(player == 1){ System.out.println(win); winCount += 1; }else if(player == 2){ System.out.println(lose); loseCount += 1; } break; case 1: if(player == 0){ System.out.println(win); winCount += 1; }else if(player == 1){ System.out.println(draw); }else if(player == 2){ System.out.println(lose); loseCount += 1; } break; case 2: if(player == 0){ System.out.println(lose); loseCount += 1; }else if(player == 1){ System.out.println(win); winCount +=1; }else if(player == 2){ System.out.println(draw); } break; }
}
}
java
試したこと
echo %CLASSPATH%でクラスパスを通す。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー