Est ce une erreur importante : "overrides a deprecated API"

Est ce une erreur importante : "overrides a deprecated API" - Java - Programmation

Marsh Posté le 18-02-2003 à 14:50:15    

Voilaà quand je compile j'ai cette erreur (ou warning):
 
Identification.java uses or overrides a deprecated API.
 
Mais mon programme marche nickel ...
 
Donc je voudrais savoir si c important que je jete un coup d'oeil sur cet erreur ou ça en vaut pas la peine ?
 
J'ai pas envie de tomber sur de mauvaises surprises (genre tout reprogrammer ...)

Reply

Marsh Posté le 18-02-2003 à 14:50:15   

Reply

Marsh Posté le 18-02-2003 à 14:51:36    

comme ca doit être indiqué, compile avec un -deprecated

Reply

Marsh Posté le 18-02-2003 à 15:30:23    

Comme mon compilateur en ligne de commande ne marche pas ... (J'arrive pas à faire de javac ....)
 
J'utilise JCreator, tu sais comment compiler en -deprecated avec JCreator ?

Reply

Marsh Posté le 18-02-2003 à 15:51:53    

deprecated, ça veut dire que dans les prochaines version du JDK, la classe ou méthode désignée n'existera plus. Donc tu ferais mieux de chercher à remplacer ce truc par qqch qui n'est pas deprecated, plutôt que de compiler avec -depreceted (ce qui équivaut à fermer les yeux !)

Reply

Marsh Posté le 19-02-2003 à 13:26:53    

C'est qu'il faut pouvoir utiliser l'option de compilation "deprected", afin que le compilateur te dise très précisément quelle est la méthode dépréciée que tu utilises, et le cas échéant (cf. Javadoc de cette méthode), quel est la méthode à utiliser à la place.

Reply

Marsh Posté le 19-02-2003 à 13:49:31    

El_gringo a écrit :

deprecated, ça veut dire que dans les prochaines version du JDK, la classe ou méthode désignée n'existera plus. Donc tu ferais mieux de chercher à remplacer ce truc par qqch qui n'est pas deprecated, plutôt que de compiler avec -depreceted (ce qui équivaut à fermer les yeux !)

deprecated veut surtout dire qu'il existe une fonction qui a remplacé la fonction deprecated.
Ca ne préjuge en rien sur le fait que cette fonction sera présente ou non dans la prochaine version du JDK (le JDK 1.4 par exemple est bien obligé de supporter certaines fonctions deprecated rien que pour supporter les applets par exemple

Reply

Marsh Posté le 19-02-2003 à 13:51:44    

El_gringo a écrit :

deprecated, ça veut dire que dans les prochaines version du JDK, la classe ou méthode désignée n'existera plus.


faux ! :o

Reply

Marsh Posté le 19-02-2003 à 13:57:47    

noldor a écrit :

deprecated veut surtout dire qu'il existe une fonction qui a remplacé la fonction deprecated.
Ca ne préjuge en rien sur le fait que cette fonction sera présente ou non dans la prochaine version du JDK (le JDK 1.4 par exemple est bien obligé de supporter certaines fonctions deprecated rien que pour supporter les applets par exemple


 
Pourquoi ? en 1.4 la classe Applet est deprecated ?

Reply

Marsh Posté le 19-02-2003 à 13:58:39    


 
Ha bon ? Et du coup, même les classes et méthode deprecated depuis le JDK 1.1 son encore supportées ?

Reply

Marsh Posté le 19-02-2003 à 14:03:20    

El_gringo a écrit :


 
Ha bon ? Et du coup, même les classes et méthode deprecated depuis le JDK 1.1 son encore supportées ?


bha oui.

Reply

Marsh Posté le 19-02-2003 à 14:03:20   

Reply

Marsh Posté le 19-02-2003 à 14:18:16    


 
Bah j'apprend quelque chose là. Mais du coup, en 2040, les 9/10 des méthodes et API seront deprecated ! :D

Reply

Marsh Posté le 19-02-2003 à 14:23:49    

El_gringo a écrit :


 
Bah j'apprend quelque chose là. Mais du coup, en 2040, les 9/10 des méthodes et API seront deprecated ! :D


je m'avance (j'ai pas lu la définition exacte), mais pour moi, une méthode dépreciée signifie qu'il ne faut pas se plaindre si quelque chose bug parce qu'on l'utilise. On gros, pour moi, ca signifie que Sun arrête de maintenir ces méthodes (ou ces classes), ce qui ne signifie pas qu'elles ne fonctionneront plus dans les prochines JDK.
 
Mais je suis sur qu'ils continue de les maintenir. C'est juste qu'ils diovent être moins regardant ...

Reply

Marsh Posté le 19-02-2003 à 14:44:26    

benou a écrit :


je m'avance (j'ai pas lu la définition exacte), mais pour moi, une méthode dépreciée signifie qu'il ne faut pas se plaindre si quelque chose bug parce qu'on l'utilise. On gros, pour moi, ca signifie que Sun arrête de maintenir ces méthodes (ou ces classes), ce qui ne signifie pas qu'elles ne fonctionneront plus dans les prochines JDK.
 
Mais je suis sur qu'ils continue de les maintenir. C'est juste qu'ils diovent être moins regardant ...


 
Roooh, ils sont quand même bien chez Sun ! :D

Reply

Marsh Posté le 19-02-2003 à 15:28:32    

El_gringo a écrit :


Roooh, ils sont quand même bien chez Sun ! :D


Sun mérite votre confiance ! :D

Reply

Marsh Posté le 19-02-2003 à 15:55:57    

Reply

Marsh Posté le 19-02-2003 à 16:24:09    

benou a écrit :


Sun mérite votre confiance ! :D


Surtout avec Sun régénérant !  :D

Reply

Marsh Posté le 19-02-2003 à 16:30:35    

Extrait de la page sus-mentionnée par benou :

Citation :

A deprecated class or method (...) should no longer be used at all, as it will probably cease to exist in the future.
The need for deprecation comes about because, as a class evolves, its API changes. (...) You need to keep the old API around until people make the transition to the new one, but you don't want developers to continue programming to the old API. The ability to mark a class or method as "deprecated" solves the problem.


 
Ce qui donne en français, pour les non-anglophones :

Citation :

Une classe ou une méthode dépréciée (...) ne doit plus être utilisée du tout, car elle n'existera probablement plus dans le futur. Le besoin de déprécier vient du fait que lorsqu'une classe évolue, son interface change. (...) Vous avez besoin de garder l'ancienne interface pour permettre aux utilisateurs de faire la transition entre l'ancienne et la nouvelle interface, mais vous ne voulez plus que les développeurs utilisent l'ancienne interface. La possibilité de marquer une classe ou une méthode comme "dépréciée" résoud le problème.


Reply

Marsh Posté le 19-02-2003 à 17:31:51    

C'est bon, j'ai modifié la méthode "has-been"  :jap:

Reply

Marsh Posté le 19-02-2003 à 21:05:24    

Shogun2002 a écrit :

Comme mon compilateur en ligne de commande ne marche pas ... (J'arrive pas à faire de javac ....)
 

:ouch: mais euh !!  
Shogun2002! (personne lui a dit!?)
La premiere chose à faire serait que tu saches faire un javac justement!
Allez, je suis dans un bon jour, si tu veux essayer ce soir je peux meme t'aider :ange:

Reply

Marsh Posté le 19-02-2003 à 22:00:46    

Au fait j'avais deja poster un post expliquant mon problème de javac en ligne de commande (il ne reconnait pas la commande javac mais la commande java oui).
 
Après plusieurs réponses sur le forum , on me dit que mon install de sdk etait foireux ....
 
Car depuis que j'ai installé Rational Rose et JBuilder, la commande javac n'était plus dispo ! bizarre non  :??:  
 
J'ai viré Rational et reinstallé Java 1.4.1 et toujours le meme pb !
 
Depuis g jeté l'éponge pour JBuilder (qui est seulement pratique pour les interfaces graphiques) et je bosse sous JCreator (implementation, compilation, execution ....).
 
Merci quand meme pour ton aide  :jap:

Reply

Marsh Posté le 19-02-2003 à 22:02:21    

quand tu fais, sous dos
echo %PATH%
 
tu as quoi?
et ton jdk est installé ou?

Reply

Marsh Posté le 19-02-2003 à 22:17:16    

C:\Documents and Settings\PROPRIETAIRE>echo %PATH%
C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\system32\WBEM;C:\Program Files\Rationa
l\common;C:\Program Files\Rational\ClearQuest;C:\Program Files\Rational\Rose\Top
Link\;C:\Program Files\Real\Helix Producer Basic
 
 
Comment virer c truc de rational ? en plus je les desinstaller "à la main" ....
 
JDK dans:
 
c:\j2sdk1.4.1

Reply

Marsh Posté le 19-02-2003 à 22:18:56    

win2K?

Reply

Marsh Posté le 19-02-2003 à 22:19:35    

XP Home

Reply

Marsh Posté le 19-02-2003 à 22:26:52    

bon on va admettre que ça doit etre a peu pres pareil
panneau de config>systeme>avancé>variables d'env.
tu peux changer la path dans les var. systeme
et profites en pour y ajouter c:\j2sdk1.4.1\bin sans oublier le ; séparateur.
 
ok>ok>ok
réouvre une fenetre dos et paf, miracle, ton javac va marcher :D

Reply

Marsh Posté le 20-02-2003 à 10:08:18    

Heu ...
 
Il y est déjà  :pt1cable:  
 
Je vois pas ce qui marche pas ...
 

Reply

Marsh Posté le 20-02-2003 à 10:40:08    

Il y a pas un moyen de modifier directement dans le fichier (sans passer par Windows) ?

Reply

Marsh Posté le 20-02-2003 à 11:08:48    

Shogun2002 a écrit :

Heu ...
 
Il y est déjà  :pt1cable:  
 
Je vois pas ce qui marche pas ...


 
Attend, mais là :


C:\Documents and Settings\PROPRIETAIRE>echo %PATH%
C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\system32\WBEM;C:\Program Files\Rationa
l\common;C:\Program Files\Rational\ClearQuest;C:\Program Files\Rational\Rose\Top
Link\;C:\Program Files\Real\Helix Producer Basic


 
T'as bien affiché le résultat d'un echo PATH %PATH%
Moi j'y vois pas le sous répertoire "/bin" de ton JDK.
Et puis, éditer directement la variable, on pouvais le faire sous Windows 98 via autoexec.bat, mais ss XP, j'en sais trop rien.

Reply

Marsh Posté le 20-02-2003 à 11:32:24    

En faisant la méthode de real moins moins vis Windows la variable d'environnement systeme est deja définit ....
 
Voila ce que j'ai à partir de Windows
 
Variable d'environnement Systeme :
 
Nom de la variable : JAVA
Valeur de la variable : C:\j2sdk1.4.1\bin
 
 
Sous Windows c'est bien définit ... mais quand on verifie avec echo Path il y est pas ...
 
Donc si qqun c modifier le fichier directement, je suis prenant  :D

Reply

Marsh Posté le 20-02-2003 à 11:48:47    

C'est bon j'ai résolu ...  
 
Il fallait aussi le defnir pour variable d'environnement utilisateur
 
Mais tout ce qui est rmi ... ça veut pas ...
 
Bon c mieux que rien ....

Reply

Marsh Posté le 20-02-2003 à 11:51:22    

si rmi fonctionne,  :D  
 
Grand merci à ceux qui m'ont aidé   :jap:

Reply

Marsh Posté le 20-02-2003 à 12:48:48    

Shogun2002 a écrit :

En faisant la méthode de real moins moins vis Windows la variable d'environnement systeme est deja définit ....
 
Voila ce que j'ai à partir de Windows
 
Variable d'environnement Systeme :
 
Nom de la variable : JAVA
Valeur de la variable : C:\j2sdk1.4.1\bin
 
 
Sous Windows c'est bien définit ... mais quand on verifie avec echo Path il y est pas ...
 
Donc si qqun c modifier le fichier directement, je suis prenant  :D  

c la variable PATH que je t'ai dis de modifier gros malin !!!

Reply

Marsh Posté le 20-02-2003 à 14:04:05    

Mais je savais pas que la variable d'environnement utilisateur == variable PATH , je pensais que ct la variable d'environnement systême ...
 
Enfin bref ... ça marche  :D

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed