![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java 学习
文章平均质量分 69
涟幽516
Those who cannot remember the past are condemned to repeat it.
展开
-
使用 JavaParser 解析代码
要判断 Java 代码文本中一个方法的输入参数个数和类型,可以借助 JavaParser 这样的第三方库来解析 Java 代码并获取方法的参数信息。对于局部变量的个数和类型,也可以通过类似的方法来解析语句中的局部变量信息。上面的代码中,我们使用 JavaParser 加载 Java 文件并创建 CompilationUnit 对象,然后遍历所有的方法声明,获取方法的参数信息和局部变量信息。2)编写 Java 代码,使用 JavaParser 解析 Java 代码并获取方法参数以及局部变量信息。原创 2024-05-25 12:40:14 · 363 阅读 · 0 评论 -
Soot 安装和简单使用
Soot 是 McGill 大学的 Sable 研究小组自 1996 年开始开发的 Java 字节码分析工具,它提供了多种字节码分析和变换功能。通过它可以进行过程内和过程间的分析优化,以及程序流图的生成;还能通过图形化的方式输出,让用户对程序有个直观的了解。尤其是做单元测试的时候,可以很方便的通过这个生成控制流图然后进行测试用例的覆盖,显著提高效率。Soot 项目已经不再继续维护,其最高支持到 Java 9 版本。如果要在更新的项目中使用,请配置项目组最新开发和维护的 SootUp 项目(原创 2024-03-25 07:15:00 · 1167 阅读 · 0 评论 -
java 指定编码 utf-8、解决编码报错问题
在编译 java 或者运行 java 类、jar 文件时,我们往往会遇到编码错误导致的问题,例如:程序中中文编码的输入输出变为乱码,编译时报错“无法识别的 GBK 字符” 等。这些问题都是由于 JDK 的程序 java.exe 和 javac.exe 默认以 GBK 编码运行导致的。而我们常见的代码编辑器或集成开发软件(如:EditPlus、IDEA、Eclipse)则默认以 Unicode utf-8 的编码格式运行,编码方式的不同就导致了程序的异常。这样就可以解决这类问题。原创 2024-03-09 12:47:14 · 1168 阅读 · 0 评论 -
Randoop 报错 Cannot find the Java compiler 的解决方案
JDK 目录下找到 lib 子目录,只有 JDK 有编译环境 tool.jar 文件,而 Randoop 的最近几个版本似乎会默认读取 JRE 的目录,而 JRE 没有 tools.jar。在变异测试中,可以利用 Randoop 的随机测试用例,并结合 MuJava 工具,来初步筛选掉可能的等价变异体,并保留非等价变异体(部分需要手工操作)。编写测试用例是一项困难且耗时的工作,但同时又是好的软件工程的重要部分。Randoop是一个随机测试的测试用例生成的工具,能够自动的为Java代码中的类生成单元测试。原创 2024-03-09 00:49:30 · 889 阅读 · 0 评论 -
Soot 工具命令行参数解释完整版
由于网络上对 Soot 工具的参数解释仅局限于模仿官方帮助文档介绍的部分常用参数,而未对其他参数进行解释。我将记录一下自己通过 机翻+人工校对 的 soot.Main -help 命令给出的参数列表。原创 2024-03-01 00:50:15 · 853 阅读 · 0 评论