Compilation impossible : classe introuvable

Résolu
Bonjour,
Voila pour un projet de l'ecole je dois créer une liste d'objet "Player" je crée donc ma classe Player et ensuite je créer une méthode main où je déclare ma liste Player sauf que quand je compile il ne trouve pas de classe Player voici mon code:

package g37727.tournament.business;
public class Player {
private String name;
private int points;
private int id;
private static int nextId;

public Player (String unNom){
name = unNom;
points = 0;
id= nextId;
nextId++;
}

public String getName(){
return name;
}

public int getPoints(){
return points;
}

public int getId(){
return id;
}

public static int getNextId(){
return nextId;
}

public void setPoints(int unPoints){
if (unPoints < 0){
throw new IllegalArgumentException ("Les points ne peuvent être négatifs");
}
points=unPoints;
}
}
-------------------------------------------------------------------------------------------
package g37727.tournament.business;
import java.util.ArrayList;

public class Main {

public static void main ( String[] args ) {

ArrayList <Player> liste = new ArrayList <> ();

uneliste.add(Player);
System.out.println(liste);
}
}

(Oui mon main n'est pas complet c'était juste pour faire un test)
Pouvez vous m'aider svp.
merci a vous!

2 réponses

Résumé de la discussion

Plusieurs échanges portent sur l'utilisation de la classe Player dans un projet Java et sur pourquoi la compilation échoue lorsque l'on tente de stocker des Player dans une liste. Les réponses suggèrent notamment d'instancier correctement les objets et d'utiliser l'import ou le chemin du package, ainsi que d'initialiser les identifiants et d'éviter d'ajouter la classe au lieu d'une instance. Le fil indique que le code peut fonctionner lorsque les objets sont correctement instanciés et que l'incrémentation de nextId est ajustée pour que l'ID reflète le premier joueur. D'autres échanges abordent les problèmes d'importation, le chemin des fichiers et l'usage correct de Main et des objets dans ArrayList, afin d'éviter les erreurs de compilation et d'exécution.

Bobot (l’IA à votre service)
  1. Modérateur
    Pour avoir la classe Player dans ta classe Main, tu devrais faire un
    import g37727.tournament.business.Player;
    1. toujours le même message d'erreur mais en plus j'ai une nouvelle erreur qui m'indique qu'il ne trouve pas la class Player dans l'import
    2. Modérateur
      Donc soit ta classe Player n'est pas dans le bon dossier (le même que la classe Main normalement), soit elle n'a jamais été compilée (à cause d'erreurs par exemple).
    3. C'est dans le meme dossier et elle a bien été compilé :s le probleme ne viendrait pas plutot du package et du classpath?
    4. Modérateur
      Si ça fonctionne avec Main, il n'y a pas de raison que ça ne fonctionne pas avec Player, c'est le même package, donc le même dossier, si la configuration est bonne pour l'un, elle est bonne pour l'autre...
    5. Je vois vraiment pas ou est le problème alors xS
  2. Bonjour
    je viens de reviser ton code et j'ai remarquer qui'il ya quelques erreurs :

    dans la ligne: uneliste.add(Player); la variable uneliste n'est pa declaré tu dois la remplacer par "liste"
    et tu es entrein d'ajouté une classe a la liste et c ne pa correct, tu devras creer une variabel de type Player et apres l'ajouter a la liste ; comment :

    ArrayList <Player> liste = new ArrayList <Player>();
    Player p = new Player("player1");

    liste.add(p);
    System.out.println(liste);
    1. Merci beaucoup pour ta réponse si rapide je vais tester et je te dirai si cela marche :)
    2. Non ca ne va toujours pas :(

      Main.java10: cannot find symbol
      symbol: class Player
      location: class g37727.tournament.business.Main
      ArrayList <Player> liste = new ArrayList <Player> ()
      ^
      J'ai ce message a chaque fois qu'il y a le mot Player je ne comprend pas.
      Ca ne viendrait pas du CLASSPATH?