Can I Have a Stack Trace to Examine the Dependency Conflict Issue?Technical Track
Intensive use of libraries in Java projects brings potential risk of dependency conflicts, which occur when a project directly or indirectly depends on multiple versions of the same library or class. When this happens, JVM loads one version and shadows the others. Runtime exceptions can occur when methods in the shadowed versions are referenced. Although project management tools such as Maven are able to give warnings of potential dependency conflicts when a project is built, developers often ask for crashing stack traces before examining these warnings.It motivates us to develop RIDDLE, an automated approach that generates tests and collects crashing stack traces for projects subject to risk of dependency conflicts. RIDDLE, built on top of ASM and Evosuite, combines condition mutation, search strategies and condition restoration. We applied RIDDLE on 19 real-world Java projects with duplicate libraries or classes. We reported 20 identified dependency conflicts including their induced crashing stack traces and the details of generated tests. Among them, 15 conflicts were confirmed by developers as real issues, and 10 were readily fixed. The evaluation results demonstrate the effectiveness and usefulness of RIDDLE.
Thu 30 MayDisplayed time zone: Eastern Time (US & Canada) change
14:00 - 15:30 | |||
14:00 20mTalk | ENRE: A Tool Framework for Extensible eNtity Relation ExtractionDemos Demonstrations Wuxia Jin Xi'an Jiaotong University, Yuanfang Cai Drexel University, Rick Kazman University of Hawai‘i at Mānoa, Qinghua Zheng MOEKLINNS Lab, Department of Computer Science and Technology, Xi'an Jiaotong University, 710049, China, Di Cui Xi'an Jiaotong University, Ting Liu MOEKLINNS Lab, Department of Computer Science and Technology, Xi'an Jiaotong University, 710049, China | ||
14:20 20mTalk | Detection and Repair of Architectural Inconsistencies in JavaTechnical Track Technical Track Negar Ghorbani University of California, Irvine, Joshua Garcia University of California, Irvine, Sam Malek University of California, Irvine | ||
14:40 20mTalk | Can I Have a Stack Trace to Examine the Dependency Conflict Issue?Technical Track Technical Track Ying Wang Northeastern University, China, Ming Wen The Hong Kong University of Science and Technology, Rongxin Wu Department of Computer Science and Engineering, The Hong Kong University of Science and Technology, Zhenwei Liu Northeastern University, China, Shin Hwei Tan Southern University of Science and Technology, Zhiliang Zhu Northeastern University, China, Hai Yu Northeastern University, China, Shing-Chi Cheung Department of Computer Science and Engineering, The Hong Kong University of Science and Technology | ||
15:00 20mTalk | Investigating the Impact of Multiple Dependency Structures on Software DefectsTechnical Track Technical Track Di Cui Xi'an Jiaotong University, Ting Liu MOEKLINNS Lab, Department of Computer Science and Technology, Xi'an Jiaotong University, 710049, China, Yuanfang Cai Drexel University, Qinghua Zheng MOEKLINNS Lab, Department of Computer Science and Technology, Xi'an Jiaotong University, 710049, China, Qiong Feng Drexel University, Wuxia Jin Xi'an Jiaotong University, Jiaqi Guo Xi'an Jiaotong University, Yu Qu Xi'an Jiaotong University | ||
15:20 10mTalk | Discussion Period Papers |