Erreurs de compilation sous Windows

Résolu
legolas45 Messages postés 6 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 juin 2008 - 6 juin 2008 à 16:41
legolas45 Messages postés 6 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 juin 2008 - 6 juin 2008 à 17:55
Mon probleme est la suivant. Quand je compile mon programme sous Linux tout se passe bien aucun probleme mais quand je compile sous windows il me met un probleme au niveau de l'ArrayList.
J'ai installer java sur ma machine windows. Je peut compiler tant que je ne met pas d'ArrayList.
J'ai egalement une erreur avec le compartor sous Windows.
Voici mon code:
Pour ma class Cine:
import java.util.*;
import java.io.*;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;

public class Cine {
    static ArrayList <Film> lesFilms;
    Cine(){
    lesFilms= new ArrayList <Film>();
    }

public ArrayList <Film> getFilms(){
    return lesFilms;
    }
/** Saisie de Films */
public static Cine saisie(){
    System.out.println("Combien voulez-vous saisir?");
    int nb=Integer.parseInt(Lecture.lireChaine());
    Cine c= new Cine();
    for(int i=0;i<nb;i++) c.lesFilms.add(Film.saisie());
    return c;
    }
/** Affichage des Films */
public String toString(){
    String res="";
    for(int i=0;i<lesFilms.size();i++) res+=i+". "+lesFilms.get(i)+"\n"; // for(Film fi:lesFilms)
    return res;                                 // res+= fi+"\n";
    }                                     // return res;
/** Suppresion d'un Film */
public void suppr(int i){
    lesFilms.remove(i);
    }
/** Ajout d'un Film */
public void add(){
    lesFilms.add(Film.saisie());
    }
/** Trie des Films */
public void trie(){
    Collections.sort(lesFilms);
    }
/** Trie par Annee des Films */
public void trieAnnee(){
 Collections.sort(lesFilms,new AnneeComparator());
}
/** Sauvegarde sur fichier */
public void sauve(String nomfic){
    try{
        SerialSauveur.sauve(lesFilms,nomfic);
    }
    catch(Exception e) {
             System.out.println("Erreur de lecture !"+e);
       }
}
/** Chargement d'un fichier */
public static ArrayList<Film> charge(String nom){
    Object obj= new Object();   
    try{
        obj= SerialSauveur.charge(nom);
    }
    catch(Exception e) {
             System.out.println("Erreur de lecture !"+e);
        }
    return (ArrayList<Film>)obj; // convertir objet en arraylist
}

/** Programme principal */
public static void main(String [] args){
    System.out.println("Que voulez-vous faire?");
    System.out.println("1- Charger fichier et l'afficher");
    System.out.println("2- Entre de nouveau films");
    int choix=Integer.parseInt(Lecture.lireChaine());
    if(choix==1){
        System.out.println("Nom fichier a charger:");
        String f=Lecture.lireChaine();
        lesFilms=charge(f);
        System.out.println(lesFilms);
    }
    if(choix==2){
        Cine c=new Cine();
        c.saisie();
        System.out.println("Nom fichier a sauver:");
        String fic=Lecture.lireChaine();
        c.sauve(fic);
    }
}
}

Class Film:
import java.util.*;
import java.io.*;

public class Film implements Comparable <Film>, Serializable {
    protected String titre;
    private int annee;
    private String realisateur;
    private String genre;
/** Constructeur par defaut */
Film(){
    titre ="";
    annee= 0;
    realisateur="";
    genre="";
    }

/** Constructeur */
 Film(String tit,int an,String real,String ge){ //Constructeur
     titre=tit;
    annee=an;
    realisateur=real;
    genre=ge;
    }
/** Recuperation du Titre */
 public String getTitre(){
     return titre;
    }
/** Recuperation de l'Annee */
 public int getAnnee(){
     return annee;
    }
/** Recuperation du Realisateur */
 public String getRealisateur(){
     return realisateur;
    }
/** Recuperation du Genre */
 public String getGenre(){
     return genre;
    }
/** Affichage */
 public String toString(){
 return (titre+",produit en: "+annee+",realise par "+realisateur+",genre: "+genre);
}

public int compareTo(Film f){
 return f.titre.compareToIgnoreCase(f.titre);
}
/** Saisie d'un Film */
public static Film saisie(){
    System.out.println("Titre:");
    String titre=Lecture.lireChaine();
    System.out.println("Annee:");
    int annee=Integer.parseInt(Lecture.lireChaine());
    System.out.println("Realisateur:");
    String realisateur=Lecture.lireChaine();
    System.out.println("Genre:");
    String genre=Lecture.lireChaine();
    return new Film(titre,annee,realisateur,genre);
    }
}

Class AnneComparator:
import java.util.*;

public class AnneeComparator implements Comparator <Film> {
/** Comparaison des Annee des Films */
 public int compare(Film f1,Film f2){
    if(f1.getAnnee()<f2.getAnnee()) return 1;
    else if(f2.getAnnee()<f1.getAnnee()) return -1;
    else return 0;
 }
}

Class Lecture:
import java.io.*;

public class Lecture
{
 public static String lireChaine() {
   String ligne =null;
   BufferedReader entree = new BufferedReader(new InputStreamReader(System.in));
   try{
     ligne = entree.readLine();
   }
   catch(IOException e) {
     System.out.println("Erreur de lecture !"+e);
   }
   return ligne;
 }
}

Class SerialSauveur:
import java.io.*;

public class SerialSauveur{
    public static Object charge (String f) throws Exception {
    Object o;
    FileInputStream fis=new FileInputStream(f);
    ObjectInputStream ois=new ObjectInputStream(fis);
    o=ois.readObject();
    ois.close();
    return (o);
    }

    public static void sauve (Serializable o, String f) throws Exception {
    FileOutputStream fos = new FileOutputStream(f);
    ObjectOutputStream w = new ObjectOutputStream(fos);
    w.writeObject(o);
    w.flush();
    w.close();
    }
   
    public static boolean existe(String nomfic){
    File f=new File(nomfic);
    return f.isFile();
    }
}

Si quelqu'un peut m'aider merci d'avance.

6 réponses

cs_laurent1024 Messages postés 987 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 30 août 2012 25
6 juin 2008 à 17:48
Est ce que tu est sur que c'est le bon jre qui est utilisé (javac -version).
3
cs_laurent1024 Messages postés 987 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 30 août 2012 25
6 juin 2008 à 17:18
Tu dois avoir une version trop ancienne du jre sous windows
ArrayList <Film> lesFilms; => c'est du java 1.6
0
legolas45 Messages postés 6 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 juin 2008
6 juin 2008 à 17:25
J'ai installer la derniere version disponible sur le site de sun.
0
cs_laurent1024 Messages postés 987 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 30 août 2012 25
6 juin 2008 à 17:29
Quelles sont les erreurs de compliation ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
legolas45 Messages postés 6 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 juin 2008
6 juin 2008 à 17:39


0
legolas45 Messages postés 6 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 juin 2008
6 juin 2008 à 17:55
C'est bon en fait tu avait raison. J'ai installer un nouveau jre mais je n'est pas donner le nouveau lien dans le path de windows.
Maintenant ca compile sans probleme.
Merci du coup de main.
0
Rejoignez-nous