|
|
1
1
由于您希望在strictfp和no strictfp之间来回切换,因此最好在构建过程中修改.class文件。然后,您可以将此选项设置为构建选项,并在不不断更改源文件的情况下切换它。 |
|
|
2
2
对于这样的任务,我首先建议编写一个小程序来验证
这实际上只是适用于您的特定问题的TDD。 |
|
|
3
1
您的代码格式有多标准?例如,您能在以“class”结尾的行中查找“class”吗?
|
|
|
4
1
如果没有Java解析器,就无法确定获得100%的正确性。但是,以下可能足够接近:
我想我找到了逃犯,但我是从一台Windows机器上写的,还没有测试过。 如果您在“public/private/protected”后面加上“class”,那么上面的注释将中断。 |
|
|
5
1
作为一个完整的捕获,不,没有regex。本质上,你需要编写一个Java解释器(或至少一个解析器)来解释一个类的任何理论构造。也就是说,如果单词class是行中的第一个非空白位,或者它前面有一个访问修饰符,它是行中的第一个非空白位,那么您应该是安全的。 |
|
6
1
我可以想到两种可能性:
这些都不是很令人满意。第一个很难写,第二个很难写对。 我的建议是找到一个re并在源代码的本地副本上释放它,然后检查所有的更改。无论错误中做了什么更改,调整re并重试。 然后引入编码标准,逐步改变所有不符合的定义,使之正确。 |
|
|
7
0
斯塔布鲁:谢谢!通过查找bcel,我发现jmangler是完美的,因为我可以修改现有的.class文件来添加strictfp修饰符。 http://javalab.cs.uni-bonn.de/research/jmangler/tutorial/using.html |
|
|
8
0
为了让人们知道,我决定最终使用Javassist而不是BCEL,因为Javassist似乎更简单,完全适合我的目的。 http://csg.is.titech.ac.jp/~chiba/javassist . 如果有人好奇,代码应该是这样的:
|
|
|
DotFX · RegEx捕获关键字前但括号后的所有内容 1 年前 |
|
|
Andrus · 如何在sql中查找第二个匹配项 1 年前 |
|
|
iato · 确保正则表达式不从命名材料中的数字中提取 1 年前 |
|
|
vr8ce · 非成对标记中特定字符的正则表达式 1 年前 |
|
|
MARTIN · 交换第一个和最后一个单词,反转所有中间的字符 1 年前 |
|
|
Carsten · 使用最近的搜索模式更改文本块 1 年前 |