A Study of Library Migration in Java Software

Software intensively depends on external libraries whose relevance may change during its life cycle. As a consequence, software developers must periodically reconsider the libraries they depend on, and must think about \textit{library migration}. To our knowledge, no existing study has been done to understand library migration although it is known to be an expensive maintenance task. Are library migrations frequent? For which software are they performed and when? For which libraries? For what reasons? The purpose of this paper is to answer these questions with the intent to help software developers that have to replace their libraries. To that extent, we have performed a statistical analysis of a large set of open source software to mine their library migration. To perform this analysis we have defined an approach that identifies library migrations in a pseudo-automatic fashion by analyzing the source code of the software. We have implemented this approach for the Java programming language and applied it on Java Open Source Software stored in large hosting services. The main result of our study is that library migration is not a frequent practice but depends a lot on the nature of the software as well as the nature of the libraries.

Data and Resources

Additional Info

Field Value
Source https://hal.science/hal-00838713
Author Teyton, Cédric, Falleri, Jean-Rémy, Palyart, Marc, Blanc, Xavier
Maintainer CCSD
Last Updated May 10, 2026, 13:38 (UTC)
Created May 10, 2026, 13:38 (UTC)
Identifier hal-00838713
Language en
Rights https://about.hal.science/hal-authorisation-v1/
contributor Laboratoire Bordelais de Recherche en Informatique (LaBRI) ; Université de Bordeaux (UB)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Centre National de la Recherche Scientifique (CNRS)
creator Teyton, Cédric
date 2013-04-28T00:00:00
harvest_object_id 4acd0f1a-eb2c-46c1-b890-61bf625b34d4
harvest_source_id 3374d638-d20b-4672-ba96-a23232d55657
harvest_source_title test moissonnage SELUNE
metadata_modified 2025-05-26T00:00:00
relation info:eu-repo/semantics/altIdentifier/arxiv/1306.6262
set_spec type:UNDEFINED