文章目录

  • 一、数据集简介
  • 二、安装和配置
    • 1、多版本jdk如何配置
    • 2、安装需要的包和命令
    • 3、编译出错
  • 三、参考资料

我使用的是2.0.0版本
项目官网:https://github.com/rjust/defects4j

一、数据集简介

Defects4j数据集是14年由Michael D. Ernst老师及其合作者一起发布的Java运行时缺陷数据集,近年来已经被广泛应用在相关研究中,如近期就有这些论文用到了这个数据集:

Chen, Yizhen, et al. “Effective online software anomaly detection.” Proceedings of the 26th ACM SIGSOFT International Symposium on Software Testing and Analysis. ACM, 2017.

Sohn, Jeongju, and Shin Yoo. “FLUCCS: using code and change metrics to improve fault localization.” Proceedings of the 26th ACM SIGSOFT International Symposium on Software Testing and Analysis. ACM, 2017.[1][1][1]

这个数据集的具体应用场景,后面还会补充。

二、安装和配置

大部分的内容按照github主页“Setting up Defects4J”操作即可,也可以参考下这篇博客:Defects4J数据集安装与需求配置

这里说下安装过程中的几个小点:

1、多版本jdk如何配置

MAC下jdk的版本一般是在这个路径下:

$ ls /Library/Java/JavaVirtualMachines/
jdk-13.0.1.jdk      jdk-15.jdk      jdk1.8.0_231.jdk

可以根据需要给用户配置不同的jdk,涉及到的文件是用户家目录下的“.bash_profile”文件;

和Java相关的配置如下:

export jdk15=/Library/Java/JavaVirtualMachines/jdk-15.jdk/Contents/Home
export JAVA_HOME=$jdk15
export PATH=$JAVA_HOME:$JAVA_HOME/jre:$PATH

保存好“.bash_profile”文件然后用下面的命令使配置生效:

source  .bash_profile

其他linux版本配置过程大同小异,/etc/profile是对所有用户生效,并不推荐,如果只有一台电脑,但是需要多个java环境共存,可以添加新的用户,给不同的用户配置不同的java版本。

后面添加

export PATH=$PATH:"path2defects4j"/framework/bin

和java这里的处理思路相同,都是为了省略命令的绝对路径

2、安装需要的包和命令

比如说wget,MAC下是默认没有安装的,可以使用brew命令安装,brew的使用可以参考这篇博客:homebrew是个啥

类似于CentOS里面的yum和Ubuntu里面的apt-get,能自动解决安装包或者命令时的各种依赖。

3、编译出错

使用defects4j compile时出现以下错误:

initialise:compile:[javac] /Users/hh/defect4j/defects4j-master/framework/projects/Chart/Chart.build.xml:57: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds[javac] Compiling 654 source files to /Users/hh/defect4j/defects4j-master/defect_sourcecode/chart_1b_buggy/build[javac] 警告: [options] 未与 -source 1.4 一起设置引导类路径[javac] 错误: 不再支持源选项 1.4。请使用 7 或更高版本。[javac] 错误: 不再支持目标选项 1.4。请使用 7 或更高版本。BUILD FAILED
/Users/hh/defect4j/defects4j-master/framework/projects/Chart/Chart.build.xml:57: Compile failed; see the compiler error output for details.

网上查了下和java版本冲突有关,把Chart.build.xml里面涉及到的版本改成自己的即可。

$ javac --version
javac 15

我在处理Math这个项目的时候同样遇到了java版本问题,但是修改相关配置后,还是不行,如果有人解决了,烦请告知,多谢!

Math这个项目在编译的时候报错信息如下:

$ defects4j compile
Running ant (compile)...................................................... FAIL
Executed command:  cd /Users/schillerxu/defect4j/defects4j-master/defect_sourcecode/math_1_buggy && /Users/schillerxu/defect4j/defects4j-master/major/bin/ant -f /Users/schillerxu/defect4j/defects4j-master/framework/projects/defects4j.build.xml -Dd4j.home=/Users/schillerxu/defect4j/defects4j-master -Dd4j.dir.projects=/Users/schillerxu/defect4j/defects4j-master/framework/projects -Dbasedir=/Users/schillerxu/defect4j/defects4j-master/defect_sourcecode/math_1_buggy -Dbuild.compiler=javac1.7  compile 2>&1
Java HotSpot(TM) 64-Bit Server VM warning: Ignoring option MaxPermSize; support was removed in 8.0
Buildfile: /Users/schillerxu/defect4j/defects4j-master/framework/projects/defects4j.build.xmlBUILD FAILED
/Users/schillerxu/defect4j/defects4j-master/framework/projects/defects4j.build.xml:82: The following error occurred while executing this line:
/Users/schillerxu/defect4j/defects4j-master/framework/projects/Math/Math.build.xml:60: Unable to create javax script engine for javascriptTotal time: 0 seconds
Cannot compile sources! at /Users/schillerxu/defect4j/defects4j-master/framework/bin/d4j/d4j-compile line 82.
Compilation failed in require at /Users/schillerxu/defect4j/defects4j-master/framework/bin/defects4j line 195.

三、参考资料

[1][1][1] Defects4j数据集的使用
Maven ERROR 不再支持源选项 5,请使用 7 或更高版本的解决办法

MAC下Defect4J安装与配置相关推荐

  1. Mac下Git安装及配置

    Mac下: 1.下载git版本并安装 运行终端 查看git版本: bogon:~ yan$ git --version git version 2.16.3 配置gitconfig文件 vim ~/. ...

  2. Mac下eclipse安装和配置Tomcat

    Step 1.下载安装 前往ApacheTomcat官网下载Tomcat: 左侧有许多版本可供选择,以Tomcat8.5为例. 下载右边Core下的第一个资源zip. 下载后解压并重名名为Apache ...

  3. Mac Hadoop的安装与配置

    这里介绍Hadoop在mac下的安装与配置. 安装及配置Hadoop 首先安装Hadoop $ brew install Hadoop 配置ssh免密码登录 用dsa密钥认证来生成一对公钥和私钥: $ ...

  4. mac mysql密码错误_解决mac 下mysql安装后root用户登录密码错误问题

    使用的mac OS 10.11  安装mysql后访问root/root用户失败,网上找了一些解决办法,下面记录下解决方法方便以后自己查询 概述(看懂下面就不用看了): 停服务:sudo /usr/l ...

  5. Jmeter01 -mac下的安装

    其实,Jmeter 无论是在mac,win,linux下安装,基本步骤都是一样的. 本篇主要介绍在mac下的安装. Jmeter 安装步骤: 1.安装jdk 2.安装jmeter 安装jmeter版本 ...

  6. mac下快速安装php的各个版本

    原文地址: mac下快速安装php的各个版本,博主:think2me mac下其实已经安装好了PHP,而且版本还蛮新的,平时搞一搞开发,还是可以的,也没啥大问题,但是今天偶然发现一个验证码图片加载不了 ...

  7. Mac 下 fastlane 安装 以及常见错误处理

    Mac 下 fastlane 安装 以及常见错误处理 fastlane 流程化提包相关内容,这是我一路自己安装 以及给同事安装遇到的问题汇总 以及我找到的解决方案 记录一下 安装fastlane su ...

  8. mac:Go安装和配置+GoLand安装和使用之完整教程

    前言 作为一个go语言程序员,觉得自己有义务为go新手开一条更简单便捷的上手之路.纵使网上教程很多,但总不尽人意.go的入门门槛还是非常低的,无论是安装还是使用. go安装 go 语言支持以下系统: ...

  9. JMeter在Mac下的安装

    JMeter篇01:JMeter在Mac下的安装 _stefan__ 关注 6 2018.10.02 17:25:14 字数 1,230 阅读 62,525 其实不论操作系统是Windows.Unix ...

最新文章

  1. 总结三种 MySQL 大表优化方案
  2. java 头像 微信群_仿微信群头像九宫格控件 LQRNineGridImageView
  3. android 中的invalidate 和 postInvalidate
  4. freeCodeCamp 学习记录——初级算法「01」翻转字符串
  5. python+mysql库+json_用python写爬虫-5.1json用pandas入mysql库
  6. VS Code HtmlFindClass 插件介绍
  7. 我在中关村,给不了的你爱的国贸(ZZ)
  8. java策略文件_[讨论]java类文件保护策略
  9. CSS 之怀疑自己的审美 1 (Day49)
  10. oracle行号排序问题
  11. 华为手机怎么设置字体?
  12. k8s之常用操作命令
  13. SVN相关问题(svn:E175002错误)的解决方案
  14. linux postgresql 创建数据库,第 23 课 PostgreSQL 创建自己的数据库、模式、用户
  15. Web前端面试指导(四):面试前准备-有备而去百战百胜
  16. 新历(公历、西历)转换农历(精确…
  17. 获取客户端及服务器的信息
  18. python爬网易云音乐评论最多的歌_使用Python爬一爬网易云音乐上那些评论火爆的歌曲...
  19. 电脑解压文件丢失怎么找回来?四种恢复方法
  20. 贝宝年报解读:是谁贷走了4.3亿美元?

热门文章

  1. 【 文字识别-优化加速】-google翻译手机版
  2. python字典读取特定值_python 获取字典特定值对应的键的实现
  3. php怎么设置段落之间的距离,html中P标签段落与CSS段落间距距离调整
  4. 武田以3.22亿美元剥离中国大陆非核心业务至海森
  5. win10系统做游戏服务器,Win10专业版如何提升游戏流畅度?Win10游戏流畅度的三种提升方法...
  6. MEGAHIT:多快好省的宏基因组装工具
  7. 四大维度,七大案例,300+测试问题,《腾讯手游测试实战手册》发布
  8. 学习Java软件编程哪个机构好
  9. 解决高版本MATLAB robotics toolbox在plot/teach时报错问题
  10. 零基础入门学习Python(21):魔法方法(1)构造和析构