如何解析Java文件并自动更改变量名/方法名/类名?
我想知道您认为解析Java文件并自动更改变量名、方法名或类名的最佳方法是什么。我之所以这么做是因为我想通过改变代码的一小部分(上面引用的三个代码之一)来更新一些代码 例如,我可以有一个类,它有一个全局变量如何解析Java文件并自动更改变量名/方法名/类名?,java,parsing,Java,Parsing,我想知道您认为解析Java文件并自动更改变量名、方法名或类名的最佳方法是什么。我之所以这么做是因为我想通过改变代码的一小部分(上面引用的三个代码之一)来更新一些代码 例如,我可以有一个类,它有一个全局变量public static final int index=0,我想把它改为public static final int xxx=0。当然,文件中每次出现的i都应替换为xxx。类名或方法名也是如此 我被告知ANTLR可能对我有用,但我从未使用过它,如果我发现它不适合我的目的,我不想浪费时间学习
public static final int index=0
,我想把它改为public static final int xxx=0
。当然,文件中每次出现的i
都应替换为xxx
。类名或方法名也是如此
我被告知ANTLR可能对我有用,但我从未使用过它,如果我发现它不适合我的目的,我不想浪费时间学习它
谢谢
编辑:
我不需要混淆代码,我需要改变它的一小部分。上面提到的其中一种。最简单的方法可能是使用现有的代码模糊器,如免费的Proguard:
也许最简单的方法是使用现有的代码模糊器,比如免费的Proguard:
使用代码混淆器为您完成这项工作
或者使用像Eclipse这样的IDE,它使用重构菜单内置了这种功能。使用代码模糊器为您完成这项工作
或者使用像Eclipse这样的IDE,它使用重构菜单内置了这种东西。如果您只需要更改一些这样的标识符,那么重构(包括Eclipse在内的大多数IDE都支持)是简单、快速和可靠的 如果您需要做很多更改(例如,如果您试图用外语中大致相同的标识符替换英语的用法-例如,
counter
=>compteur
),那么我个人会发现自己使用了一些可编写脚本的东西,比如sed或Perl。而且我会非常小心地确保我找到了精确的匹配(例如,当我将谎言
更改为真相
时,我不会将信念'更改为'betruthf
)
如果您使用的是一个自动化的、一次做很多事情的解决方案,那么需要注意的一点是:确保您可以在前后测试功能,以确保您没有破坏任何东西。如果您只需要更改一些这样的标识符,那么重构(由大多数IDE支持,包括Eclipse)是简单、快速和可靠的 如果您需要做很多更改(例如,如果您试图用外语中大致相同的标识符替换英语的用法-例如,
counter
=>compteur
),那么我个人会发现自己使用了一些可编写脚本的东西,比如sed或Perl。而且我会非常小心地确保我找到了精确的匹配(例如,当我将谎言
更改为真相
时,我不会将信念'更改为'betruthf
)
如果您使用的是一种自动化、一次做很多事情的解决方案,那么需要注意的一点是:确保您可以在前后测试功能,以确保您没有损坏任何东西。您是否考虑过使用pro guard?在您的问题中,您声称您希望“更新一些代码”,但在您对Oliver的回答中,您说“我不需要混淆代码”。那么是哪一个呢?你考虑过使用pro guard吗?在你的问题中,你声称你想“刷新一些代码”,但在你对Oliver的回答中,你说“我不需要混淆代码”“。那是哪一个呢?我不需要混淆代码。我需要改变它的一小部分。类名、变量名或方法名。我不需要混淆代码。我需要改变它的一小部分。类名、变量名或方法名。