IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Passage du JDK 7 au 1.4


Sujet :

avec Java

  1. #1
    Membre confirmé Avatar de hugoclo
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    615
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 615
    Points : 480
    Points
    480
    Par défaut Passage du JDK 7 au 1.4
    Bonsoir;
    Voila après avoir galéré j'ai réussi a crée une petite appli.
    Maintenant je dois la déployer sur des poste dont Java est au 1.4
    Pour mon appli j'avais demandé de l'aide pour une fonction ici.
    Voici la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    public class Main
        {
         public ArrayList countMyItems(ArrayList<String> objets) {
            ArrayList<MonObjet> mesObjets = new ArrayList();
            while (!objets.isEmpty()) {
                String tmp = objets.get(0);
                int j = 0;
                while (objets.remove(tmp)) {
                    j++;
                }
                MonObjet a = new MonObjet(tmp, j);
                mesObjets.add(a);
            }
     
            return mesObjets;
         }
     
        }
    et la class
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    public class MonObjet{
     
        private String chaine;
        private int occurence;
     
        public MonObjet(String chaine, int occ) {
            this.chaine = chaine;
            this.occurence = occ;
        }
     
        public String getChaine() {
            return chaine;
        }
     
        public int getOccurence() {
            return occurence;
        }
    }
    Ma question est il y a t'il un moyen de transformer cette fonction.
    Lorsque le sage montre la lune du doigt l'idiot regarde le doigt.

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonsoir,

    Le type générique n'existe qu'à partir de java 1.5. Donc à modifier
    public ArrayList countMyItems(ArrayList<String> objets) {
    ArrayList<MonObjet> mesObjets = new ArrayList();
    .

    A+.

  3. #3
    Membre confirmé Avatar de hugoclo
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    615
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 615
    Points : 480
    Points
    480
    Par défaut
    Hélas c'est la qu'est l'os.
    Il existé quoi avant.
    Lorsque le sage montre la lune du doigt l'idiot regarde le doigt.

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Rien.

    Tu devais faire le typecasting à la main à chaque fois:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public ArrayList countMyItems(ArrayList objets) {
    ...
    String tmp = (String)objets.get(0);
    Pourquoi du java 1.4? Cette version n'est plus supporté depuis belle lurette (5 ans) par oracle et les failles de sécurité n'y sont plus corrigées!

    La seule version de java actuellement supporté par oracle est la java 7. Même java 6 a terminé son cycle et ne recevra plus d'updates.

  5. #5
    Membre confirmé Avatar de hugoclo
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    615
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 615
    Points : 480
    Points
    480
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public ArrayList countMyItems(ArrayList objets) {
    ...
    String tmp = (String)objets.get(0);
    Comprend pas tout
    Je débute.

    Pourquoi la 1.4.
    L'endroit ou je travail les machines sont verrouillées, Windows xp est installé sur ces machines. Même quand on reçois de nouvelles machines(avec Seven par exemple) on les repasse en XP sinon les applicatifs ne fonctionnent plus.Une fois on à tester java 5 je crois et ça a couter 2 semaines pour tout refaire. J'avais déjà fais cette appli en vb.net mais framework incompatible. Et puis je commence avec Java et je trouve ca beaucoup plus souple.(Surtout pour mon boulot).
    Lorsque le sage montre la lune du doigt l'idiot regarde le doigt.

  6. #6
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Citation Envoyé par hugoclo Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public ArrayList countMyItems(ArrayList objets) {
    ...
    String tmp = (String)objets.get(0);
    Comprend pas tout
    Je débute.
    Tu remplaces les deux lignes qui marchent pas par ces lignes-là et ça marche.

    - Première ligne : en 1.4 les génériques ça n'existe pas, donc on les enlève. Les trucs entre < et >
    - Deuxième ligne : sans génériques, le compilateur ne va pas deviner que objets.get(0) est censé renvoyer une String. Pour lui c'est Object et puis c'est tout. Du coup, puisqu'on veut une String, il faut faire un cast en mettant (String) devant.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par hugoclo Voir le message
    Windows xp est installé sur ces machines. Même quand on reçois de nouvelles machines(avec Seven par exemple) on les repasse en XP sinon les applicatifs ne fonctionnent plus.
    T'as un an pour fuir avant que tout pête dans 1 an (fin du support de XP)


    Une fois on à tester java 5 je crois et ça a couter 2 semaines pour tout refaire.
    Deux semaine pour installer un java 5 ??? Accessoirement, java 7 est supporté sur XP.


    J'avais déjà fais cette appli en vb.net mais framework incompatible. Et puis je commence avec Java et je trouve ca beaucoup plus souple.(Surtout pour mon boulot).
    C'est déjà la galère de suivre correctement l'évolution technologique, si tu démarre avec un java d'il y a 11 ans (java 1.4) t'es bon pour un tas d'emmerde.

    En admettant que vraiment vraiment t'aie aucun moyen de leur suggérer d'installer un java 7 à coté du java 1.4 (oui, c'est tout à fait possible, rien ne l'en empêche!) et que tu ne soit pas décidé à fuir de là, pourquoi, bon sang de bois, as-tu dévéloppé en java 7 alors? Ces version de java on tellement différence => travaille directement avec un jdk 1.4 et non pas avec un jdk 7 !!!


    Pour ce qui est de convertir le code ... Ben tu risque d'avoir beaucoup de choses à refaire. Sans parler des librairies opensources qu'on a tendance à vite prendre pour gagner du temps ... Tu n'en trouvera plus aujourd'hui prévue pour cette antiquité => Encore plus de temps de développement.

  8. #8
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    j'ai eu un problème similaire avec une api écrite et compilée en java 1.5 mais devant être utilisé dans une appli web compilée en 1.4.

    j'avais utilisé à l'époque retroweaver. avec succès.

    peut être peut il être utilisé avec ton api 1.7. ou peut être existe-t-il une solution équivalent pour 1.7
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  9. #9
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    il y a aussi le switch -target de la commande javac. j'ai jamais essayé, c'est à tenter (plutôt que de modifier tout le code);
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  10. #10
    Membre averti Avatar de toutgrego
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2013
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2013
    Messages : 217
    Points : 350
    Points
    350
    Par défaut
    Citation Envoyé par hugoclo Voir le message
    L'endroit ou je travail les machines sont verrouillées, Windows xp est installé sur ces machines. Même quand on reçois de nouvelles machines(avec Seven par exemple) on les repasse en XP
    Ah effectivement, il va falloir motiver tes décideurs à évoluer. Là ou je travaille ils ont décidé de s'y prendre à l'avance. Le truc c'est qu'il y a forcément des incompatibilités comme tu l'as dit. Alors si vous ne vous y prenez pas à l'avance c'est toute votre activité qui risque d'être bloquée si vous vous y prenez à la dernière minute.

    Ensuite si tu travaille en 1.4 et que vous changez pour 7 tu vas avoir des tas de méthodes 'deprecated', ces méthodes obsolètes qu'on garde dans le JDK juste pour maintenir les anciens programmes. Tu vas devoir faire jdk 7 => jdk 1.4 => jdk 7. Quelle perte de temps quand même x)
    F*ck it ! Do it !

  11. #11
    Membre confirmé Avatar de hugoclo
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    615
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 615
    Points : 480
    Points
    480
    Par défaut
    Quand je dis que les machine sont verouillées je parle SSI.
    Tout port USB Bloquée, un seul point d'entrée sur le réseau. La totale.
    Lorsque le sage montre la lune du doigt l'idiot regarde le doigt.

  12. #12
    Membre confirmé Avatar de hugoclo
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    615
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 615
    Points : 480
    Points
    480
    Par défaut
    ça fonctionne merci.
    Lorsque le sage montre la lune du doigt l'idiot regarde le doigt.

  13. #13
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Attention que si tu compile avec un jdk 1.7, tu risque fortement, en cours d'exécution, de rencontrer des NoClassDefFoundError ou des NoSuchMethodException quand tu appellera des méthodes / classes qui n'existaient pas dans le java 1.4!!


    => Le mieux reste de compielr avec un jdk 1.4 si ça vise du java 1.4

  14. #14
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par hugoclo Voir le message
    un seul point d'entrée sur le réseau. La totale.
    Surtout le pire point d'entrée avec un java 1.4 qui a des trous de sécurité. J'espère que les applets sont désactivée sur ce réseau

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comportement bizarre depuis passage JDK 7 -> JDK 6
    Par schumi2k2 dans le forum Spring
    Réponses: 17
    Dernier message: 25/09/2012, 17h59
  2. passage d'un nom de table dans une procédure stockée
    Par thierry V dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 26/07/2010, 16h48
  3. Pb BDE suite a passage en Windows 2000 pro
    Par ARIF dans le forum Paradox
    Réponses: 4
    Dernier message: 18/11/2002, 11h39
  4. [VB6]Passage par référence d'une prop. d'objet à une fct
    Par -gYs- dans le forum VB 6 et antérieur
    Réponses: 15
    Dernier message: 02/09/2002, 08h55
  5. Passage de parametre a une anim Flash 5
    Par debug dans le forum Intégration
    Réponses: 4
    Dernier message: 03/06/2002, 17h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo