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

Langage Java Discussion :

avoir des fichiers .java à partir de fichiers .class


Sujet :

Langage Java

  1. #1
    Membre régulier
    Inscrit en
    Février 2011
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 90
    Points : 83
    Points
    83
    Par défaut avoir des fichiers .java à partir de fichiers .class
    Bonjour,

    j'ai une application d'extension .jar et je voudrais bien avoir le code source de cette application. j'ai extracté l'application et je n'ai obtenu que des fichiers .class donc pas de code sources (fichiers .java)!! comment faire ?!

    Merci..

  2. #2
    Membre habitué Avatar de Dark-Water
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 142
    Points : 159
    Points
    159
    Par défaut
    Bonjour,

    Il faut que tu utilise un décompilateur par ex jad mais il ne te donnera pas le code source seulement une interprétation en java du code compilé. Tu n'aura pas également les commentaires. Et les noms de variable n'auront pas forcémentu une grande signification.
    est mon ami !!!

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    294
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 294
    Points : 268
    Points
    268
    Par défaut
    Pour récupérer le code source d'un jar tu dois le decompiler. Tu peux utiliser JAD mais le code récupérer ne sera pas parfait

  4. #4
    Modérateur
    Avatar de Alkhan
    Homme Profil pro
    ingénieur full stack
    Inscrit en
    Octobre 2006
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : ingénieur full stack

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 232
    Points : 2 061
    Points
    2 061
    Par défaut
    bonjour,

    j'ajouterais que la décompilation n'est pas très légal, si tu n'en es pas le propriétaire !
    pour quel raison as tu besoin d'avoir accès aux sources ?
    Il n'y a pas de problème, il n'y a que des solutions.
    Cependant, comme le disaient les shadoks, s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
    Si toutefois le problème persiste, la seule solution restante est de changer le périphérique qui se trouve entre la chaise et l'écran

    Mes Articles : Mon premier article est sur le language D
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre régulier
    Inscrit en
    Février 2011
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 90
    Points : 83
    Points
    83
    Par défaut
    L'application que j'ai contient des fonctionnalités dont j'ai besoin mais je dois changer des trucs et rajouter d'autres! c'est pour ca que j'ai besoin d'extraire le code source pour le comprendre puis l'adapter en fonction de mes besoins!

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    294
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 294
    Points : 268
    Points
    268
    Par défaut
    Si tu ne possèdes pas le code source tu devrais essayer de le réaliser tout seul. Si tu utilises le code décompiler tu risques de te prendre la tete

  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
    rouge87: d'ou viens cette application, la license vous donne-t-elle les droits de modification?

  8. #8
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 552
    Points : 21 608
    Points
    21 608
    Par défaut
    Citation Envoyé par Alkhan Voir le message
    j'ajouterais que la décompilation n'est pas très légal, si tu n'en es pas le propriétaire !
    Sérieusement ? La loi a tranché sur des conditions où on a le droit ou pas le droit de décompiler ?

    Je sais bien qu'en pratique, quand les gens viennent parler de décompilation, ils ont des intentions illégales en tête, mais il ne me semble pas que l'acte lui-même ait été légiféré d'une manière ou d'une autre.
    (Cas particulier : si le programme a été crypté par une mesure raisonnablement efficace, là, ça pourrait passer pour un contournement de procédé de protection, et il y a au moins un doute.)
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  9. #9
    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
    en france:

    Article L122-6-1
    IV.La reproduction du code du logiciel ou la traduction de la forme de ce code n'est pas soumise à l'autorisation de l'auteur lorsque la reproduction ou la traduction au sens du 1º ou du 2º de l'article L. 122-6 est indispensable pour obtenir les informations nécessaires à l'interopérabilité d'un logiciel créé de façon indépendante avec d'autres logiciels, sous réserve que soient réunies les conditions suivantes :

    1º Ces actes sont accomplis par la personne ayant le droit d'utiliser un exemplaire du logiciel ou pour son compte par une personne habilitée à cette fin ;
    2º Les informations nécessaires à l'interopérabilité n'ont pas déjà été rendues facilement et rapidement accessibles aux personnes mentionnées au 1º ci-dessus ;
    3º Et ces actes sont limités aux parties du logiciel d'origine nécessaires à cette interopérabilité.
    décompilation : "traduction de la forme du code".

    Donc ce n'est autorisé que soit si autorisé par l'auteur, soit nécessaire à l'interopérabilité.

  10. #10
    Membre régulier
    Inscrit en
    Février 2011
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 90
    Points : 83
    Points
    83
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    rouge87: d'ou viens cette application, la license vous donne-t-elle les droits de modification?
    justement, cette application a été acheté par mon entreprise (sans le code source bien entendu) et j'ai envie de décomplier pour pouvoir l'adapter à mes besoins!!

  11. #11
    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
    la réponse est donc simple, tu ne peux pas. C'est interdit.

  12. #12
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 552
    Points : 21 608
    Points
    21 608
    Par défaut
    En même temps, "adapter à ses besoins" peut facilement vouloir dire "rendre capable de communiquer avec les logiciels de mon entreprise."

    Et ça, c'est de l'interopérabilité. Mais si c'est pour changer ou ajouter telle fonctionnalité en interne, effectivement, pas autorisé d'après l'article précité.

    (Je l'avais oublié d'ailleurs vu que je fais toujours ce genre de choses pour interopérabilité. Merci pour le rappel, tchize_)
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  13. #13
    Modérateur
    Avatar de Alkhan
    Homme Profil pro
    ingénieur full stack
    Inscrit en
    Octobre 2006
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : ingénieur full stack

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 232
    Points : 2 061
    Points
    2 061
    Par défaut
    Citation Envoyé par ROUGE87 Voir le message
    cette application a été acheté par mon entreprise (sans le code source bien entendu)
    C'est justement parce que ton entreprise n'a pas acheté le code source que tu ne peux pas le décompiler pour faire des modifs ou des ajouts.
    Il n'y a pas de problème, il n'y a que des solutions.
    Cependant, comme le disaient les shadoks, s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
    Si toutefois le problème persiste, la seule solution restante est de changer le périphérique qui se trouve entre la chaise et l'écran

    Mes Articles : Mon premier article est sur le language D
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  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 thelvin Voir le message
    Et ça, c'est de l'interopérabilité. Mais si c'est pour changer ou ajouter telle fonctionnalité en interne, effectivement, pas autorisé d'après l'article précité.
    Ca reste à démontrer. Ne pas confondre interopérabilité (exemple: j'ai besoin de pouvoir parler le même protocole que l'application pour lui envoyer des données depuis linux alors qu'elle ne tourne que sous windows et ne fonctionne pas sous wine) avec fonctionnalité (l'application ne prend que des CSV et j'ai besoin qu'elle prenne mes *.xls ou mes *.odf)

    Les cas d'interopérabilité ne sont pas si courants que ça. De plus, il faut d'abord se heurter à un refus du vendeur de fournir les spécifications qui permettraient d'aboutir au même point. De toutes facons, la décompilation pour interopérabilité n'autorise pas la recompilation. On reste dans le domaine du "j'apprend comment ça marche pour savoir comment lui parler".

  15. #15
    Membre actif
    Inscrit en
    Décembre 2009
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 123
    Points : 239
    Points
    239
    Par défaut
    Pour être clair : le texte dit que tu as le droit de décompiler (dans le contexte précisé par tchize) uniquement à des fins de compréhension (décortiquer un protocole non documenté), et non à des fins de modification.

  16. #16
    Candidat au Club
    Inscrit en
    Mars 2011
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    Toujours dans le même sujet, mais cas différent : je développe autour d'un progiciel dont il manque la documentation technique pour les utiliser.

    J'ajoute que j'ai le droit d'ajouter/modifier les fichiers du progiciel pour l'adapter aux besoins du client (templates FileMarker, servlets, fichiers webs, etc.).

    Ai-je le droit de décompiler certaines classes standards du progiciel pour en comprendre l'utilisation afin de créer les miennes et ajouter les fonctionnalités voulues ? Ça rentre dans le cadre de l'interopérabilité (entre mes fichiers et ceux du progiciel) ?

  17. #17
    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
    comme dit, l'interoparébilité répond à des critère stricts (nottament le refus du vendeur de fournir les documents utiles) et ne permet en tout état de cause pas la recompilation. En gros ca autoriserais à utiliser l'information pour convertir votre format en leur format, pas à rendre leur application capable de lire votre format.

  18. #18
    Candidat au Club
    Inscrit en
    Mars 2011
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    comme dit, l'interoparébilité répond à des critère stricts (nottament le refus du vendeur de fournir les documents utiles) et ne permet en tout état de cause pas la recompilation. En gros ca autoriserais à utiliser l'information pour convertir votre format en leur format, pas à rendre leur application capable de lire votre format.
    Je suis d'accord, je ne modifie en rien leur application, je n'édite que nos propres fichiers de développement qui sont autour du progiciel (donc pas de recompilation). Il me reste "le point refus de fournir les documents utiles".

    La vraie question est donc : en supposant que l'éditeur refuse de fournir les documents utiles, il n'y a rien dans ce que j'ai énoncé qui disqualifie l'interopérabilité ? (je comprendrai bien sûr qu'un oui ne veut pas dire non plus que tous les critères sont satisfaits)

  19. #19
    Membre actif
    Inscrit en
    Décembre 2009
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 123
    Points : 239
    Points
    239
    Par défaut
    Si tu as besoin de faire communiquer ton appli/tes devs avec la leur, qu'ils refusent de te fournir la spec sur le format de communication (au sens large) de leur données, alors tu peux décompiler les modules correspondants à l'encodage des données.

  20. #20
    Candidat au Club
    Inscrit en
    Mars 2011
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    C'est un peu ça... J'ai une javadoc de leur API très peu intelligible (genre method(arg0, arg1). Je tenterai d'obtenir une information plus détaillée.

Discussions similaires

  1. Trouver les fichiers compilés à partir d'une classe Java
    Par Foogiz972 dans le forum Eclipse Java
    Réponses: 6
    Dernier message: 04/09/2012, 10h55
  2. Réponses: 3
    Dernier message: 18/06/2012, 13h07
  3. Réponses: 6
    Dernier message: 14/04/2007, 14h54
  4. Réponses: 3
    Dernier message: 02/10/2005, 12h30
  5. remplir des tables a partir de fichiers TXT
    Par jeremie dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 10/03/2004, 14h50

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