Java PathFinder是一个可执行Java程序调试/检验系统。它的内核是一个Java虚拟机(JVM),可用于系统地探测程序所有可能的执行路径,以避免死锁或无法处理的异常之类的情况发生。与传统的调试程序不同,Java PathFinder报告导致缺陷的整个执行路径。Java PathFinder特别适合在多线程的程序中发现很难测试的并发缺陷。”
——来自别人博客
常用的博客:https://wenku.baidu.com/view/8950d8226edb6f1aff001f96.html
https://blog.csdn.net/qq_24451605/article/details/51405405
看了许多博客之后,终于确定了安装JPF的步骤:
① 对于Windows类的系统,可以下载、安装TortoiseHg(用于clone JPF的源代码)
安装TortoiseHg 直接默认安装就行了。
② JPF安装:分为两部分—— JPF插件的安装 和 JPF源码的clone
- JPF 插件的安装可以看教程:https://wenku.baidu.com/view/8950d8226edb6f1aff001f96.html 十分详细!
(其中那个网址是:http://babelfish.arc.nasa.gov/trac/jpf/raw-attachment/wiki/install/eclipse-plugin/update/ )
判断方法就是: windows -> Preferences -> 左侧 java -> 是否有 JPF Preferences 这个选项。
- JPF源码的克隆和运行可以看教程:http://www.it610.com/article/2540343.htm
(发现了一个failed,但是当时没管它,其实是bulid失败了……)
使用example的测试用例测试是否成功:
成功!
【使用方法】
对 .java 文件右键,选择: run as -> run configure , 左侧选择:java-application 下的 run-JPF , 右侧选择 :argugment ,并且填写自己程序需要执行的参数:
#执行的类
+target=Main
#类文件的路径,不是源代码的路径
+classpath=E:\\code\\eclipse-items\\JPFTest\\bin
#符号执行的方法
+symbolic.method=Main.main()
点击 APPLY
再点击 RUN
!!结果出现了问题——点击apply之后,报错了沃日……
系统找不到指定文件……百度发现并没有人提出这个问题……orz
但是直接 verify .jpf文件是可以成功的啊……
仔细一看错误是出在version上,所以会不会是版本的问题,于是使用命令行查看,发现他们都在1.8以上啊!(https://blog.csdn.net/qq_24451605/article/details/51405405)
[解决方法]
1. 重新clone了一次jpf-core 但是并不是这个问题,
在build新的代码时,发现了一个报错:
Errors occurred during the build.
Errors running builder 'Integrated External Tool Builder' on project 'jpf-core'.
The builder launch configuration could not be found.
The builder launch configuration could not be found.
百度连续看了好几个博客: https://blog.csdn.net/weinichendian/article/details/51741701
,解决方法都是在 出错项目-> 右键 property -> Biulder -> 删除有红叉的……但是我没有红叉啊……