XtraLibD: Detecting Irrelevant Third-Party libraries in Java and Python Applications
Ritu Kapur, Poojith U Rao, Agrim Dewan, and Balwinder Sodhi

TL;DR
XtraLibD is a fast, storage-efficient method that accurately detects irrelevant third-party libraries in Java and Python applications, reducing resource consumption and improving software maintainability.
Contribution
The paper introduces Lib2Vec and XtraLibD, novel techniques for identifying irrelevant libraries with high accuracy and efficiency, outperforming existing tools.
Findings
Achieves 99.48% accuracy in detecting irrelevant TPLs.
Reduces storage requirements by 87.93%.
Outperforms existing tools in accuracy and response time.
Abstract
Software development comprises the use of multiple Third-Party Libraries (TPLs). However, the irrelevant libraries present in software application's distributable often lead to excessive consumption of resources such as CPU cycles, memory, and modile-devices' battery usage. Therefore, the identification and removal of unused TPLs present in an application are desirable. We present a rapid, storage-efficient, obfuscation-resilient method to detect the irrelevant-TPLs in Java and Python applications. Our approach's novel aspects are i) Computing a vector representation of a .class file using a model that we call Lib2Vec. The Lib2Vec model is trained using the Paragraph Vector Algorithm. ii) Before using it for training the Lib2Vec models, a .class file is converted to a normalized form via semantics-preserving transformations. iii) A eXtra Library Detector (XtraLibD) developed and tested…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
