Intensive dependencies of a Java project on third-party libraries can easily lead to the presence of multiple library or class versions on its classpath.
When this happens, JVM will load one version and shadows the others. Dependency conflict (DC) issues occur when the loaded version fails to cover a required feature (e.g., method) referenced by the project, thus causing runtime exceptions. However, the warnings of duplicate classes or libraries detected by existing build tools such as Maven can be benign since not all instances of duplication will induce runtime exceptions, and hence are often ignored by developers. In this paper, we conducted an empirical study on real-world DC issues collected from large open source projects.
We studied the manifestation and fixing patterns of DC issues. Based on our findings, we designed Decca, an automated detection tool that assesses DC issues' severity and filters out the benign ones. Our evaluation results on 30 projects show that Decca achieves a precision of 0.923 and recall of 0.766 in detecting high-severity DC issues. Decca also detected new DC issues in these projects. Subsequently, 20 DC bug reports were filed, and 11 of them were confirmed by developers. Issues in 6 reports were fixed with our suggested patches.
Department of Computer Science and Engineering, The Hong Kong University of Science and Technology
Wed 7 Nov
|13:30 - 13:52|
Use and Misuse of Continuous Integration Features: An Empirical Study of Projects that (mis)use Travis CIDOI
|13:52 - 14:15|
Yang ZhangNational University of Defense Technology, China, Bogdan VasilescuCarnegie Mellon University, Huaimin Wang, Vladimir FilkovUniversity of California at Davis, USAPre-print
|14:15 - 14:37|
|14:37 - 15:00|
Ying WangNortheastern University, China, Ming WenThe Hong Kong University of Science and Technology, Zhenwei LiuNortheastern University, China, Rongxin WuDepartment of Computer Science and Engineering, The Hong Kong University of Science and Technology, Rui WangNortheastern University, China, Bo YangNortheastern University, China, Hai YuNortheastern University, China, Zhiliang ZhuNortheastern University, China, Shing-Chi CheungDepartment of Computer Science and Engineering, The Hong Kong University of Science and Technology