Outil d'analyse de changement de code Java - E.g Dites-moi si une méthode signature a changé, mise en œuvre de la méthode

StackOverflow https://stackoverflow.com//questions/11666701

Question

Y a-t-il un outil diff spécifiquement pour Java qui ne mettant pas simplement en évidence les différences dans un fichier, mais est plus complexe?

Par plus complexe, je veux dire que cela prendrait 2 fichiers d'entrée, le même fichier de classe de différentes versions et me raconter des choses comme:

  • Les noms de champs ont changé
  • Nouvelles méthodes ajoutées
  • Méthodes supprimées
  • Méthodes dont les signatures ont changé
  • Méthodes dont les implémentations ont changé (non intéressées par cela)

    Fait faire des googles et ne trouvez rien de tel que ceci ... Je pense que cela pourrait être utile pour déterminer si des modifications apportées à des dépendances nécessiteraient une reconstruction d'un module particulier.

    Merci d'avance

    EDIT:

    Je suppose que je devrais clarifier:

    Je ne suis pas dérangé par une interface graphique pour l'outil, ce serait quelque chose que je suis intéressé par appelermatiquement .

    Et comme pour mon raisonnement:

    • Entraînement Si j'ai besoin de reconstruire certains modules / composants si leurs dépendances ont changé (ce qui pourrait nous sauver environ 1 heure par composant) ... une explication plus détaillée mais je ne le vois pas vraiment aussi important.
    • à utiliser pour analyser les modifications apportées à certains composants que nous essayons de verrouiller et de s'appuyer sur comme étant plus stables, nous essayons de nous assurer que seuls très rarement les signatures de méthodes changent dans un composant particulier.
Était-ce utile?

La solution

Vous avez dit au-dessus de ce CLIRR est ce que vous recherchez.

Mais pour d'autres personnes ayant des besoins légèrement différents, j'aimerais recommander JDiff .Tous deux ont des avantages et des inconvénients, mais pour mes besoins, j'ai fini par utiliser JDiff.Je ne pense pas que ça va satisfaire votre dernière balle et qu'il est difficile d'appeler par programme.Ce qu'il fait, c'est générer un rapport utile pour les différences d'API.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top