MzJava is an open-source Java library for the analysis of mass spectrometry data from large scale proteomics and glycomics experiments.
Its origin lies in the need for a solid and reusable code base within our group to speed up the development and increase the maintainability of software solutions.
The first effort led to the Java Proteomic Library (JPL) (, which became MzJava after being completely reengineered and upgraded with functionality to deal with glycomics data. MzJava is a mature code base that aims at facilitating and accelerating the software development by other bioinformaticians working with mass spectrometry data.
MzJava provides data structures and algorithms for representing and processing fragmentation mass spectra (MSn) and their associated biological molecules, such as glycans, proteins, and peptides. First it includes a large list of functions to clean and transform MSn spectra, to cluster them and calculate consensus spectra. Then it contains classes to store peptides and glycans with their modifications or substituents respectively. The masses and MSn spectra of these molecules can be calculated and matched to experimental spectra using a modular scoring and alignment system. Finally data import and export functionality or the commonly used data formats is implemented.