gedcom4j is an open-source, free-to-use Java library for loading (parsing) and saving genealogy data. Using gedcom4j, you can write a Java program to load data from a GEDCOM 5.5 or 5.5.1 file into a Java data structure for your examination and manipulation, and you can also write GEDCOM files out from the same data model, with our without having already loaded a file.
Please note that gedcom4j is not an application. It is a library (jar file) that can parse, manipulate, and write genealogy data using the GEDCOM format in your own Java programs.
6 Jun 2015 - v2.2.0 available
v2.2.0 of gedcom4j is available in the downloads section of this site, and on Maven Central.
Also, starting with v2.2.0, we are dropping support for JDK 5 and switching to a minimum JDK level of 6.
In support of this new development, we have a new Jenkins CI server that should be more stable and available than our prior host.
29 Oct 2014 - v2.1.9 available
v2.1.9 of gedcom4j is available in the downloads section of this site, and on Maven Central.
This release fixes an issue where the parser was being too strict and rejecting GEDCOM files that contained completely blank lines. Thanks to Baptiste Fontaine for reporting the bug.
26 Jun 2014 - v2.1.8 available
v2.1.8 of gedcom4j is available in the downloads section of this site, and on Maven Central.
This release fixes an issue where an individual would not be loaded properly if a refererence to that individual's ID appeared earlier in the file (such as in a family record) than the actual individual. Thanks to PeWu for reporting the defect.
14 Jun 2014 - v2.1.7 available
v2.1.7 of gedcom4j is available in the downloads section of this site, and on Maven Central.
This release improves compatibility with GEDCOM files that have description text following event tags. These descriptions are strictly non-standard, but many common software packages (including Family Tree Maker) write these descriptions in files, and prior to this change, these values were being ignored on input. Event descriptions are now parsed and loaded into the object model, but must be moved (perhaps to a Note) or removed in order to pass validation as part of writing ... or validation can be suppressed.
13 Mar 2014 - v2.1.6 available
v2.1.6 of gedcom4j is available in the downloads section of this site, and on Maven Central.
This release fixes an issue where you could run into infinite recursion when using hashCode() on a StringTree, which would result in a StackOverflowError.
This release also adds a feature where unknown tags in a GEDCOM file that do not begin with underscores can optionally be loaded as non-standard custom tags rather than being discarded as errors.
Thanks to BertKoor for reporting and effectively solving the infinite recursion bug, and for suggesting more lenient parsing for non-standard tags.
We're on Maven Central
Building from Source
Minimum Requirement: JDK 6 (any edition) or later
Requirements/recommendations for building the software from source code: