citeproc-java 2.0.0 has just been released

The new version of citeproc-java 2.0.0, the Citation Style Language (CSL) processor for Java, has just been released. citeproc-java interprets CSL styles and generates citations and bibliographies. Some of the highlights are:

  • Importers for BibTeX, EndNote, and RIS allow you to create citations and bibliographies from your existing citation databases.
  • The library supports a range of output formats such as html, text, asciidoc, rtf, and fo.
  • Use the command line tool to execute the library without setting up a development environment. This is great for testing, in particular if you are a CSL style author and want to test your style files in an easy and quick manner. The command line tool even contains an interactive shell with command completion and automatic suggestions.
  • citeproc-java is backed by the popular citeproc-js library, which is very mature and stable.
  • It is CSL 1.0.1 compliant and all standard tests from the CSL test suite run successfully.

Here is a list of the changes in version 2.0.0:

  • Update citeproc-js to version 1.2.27
  • Add support for Java 11 and higher
  • Add GraalVM JavaScript runner
  • Add support for importing CSL bibliographies in YAML format
  • Remove remote connectors to improve maintainability
  • Tons of bug fixes and other minor improvements!

Grab citeproc-java 2.0.0 while it’s still hot:

Usage example

The following illustrative example will generate an HTML bibliography containing one entry for the citeproc-java website in IEEE style:

CSLItemData item = new CSLItemDataBuilder()
    .title("citeproc-java: A Citation Style Language (CSL) processor for Java")
    .author("Michel", "Krämer")
    .issued(2019, 11, 9)
    .accessed(2019, 11, 9)
String bibl = CSL.makeAdhocBibliography("ieee", item).makeString();

The output will be:

<div class="csl-bib-body">
  <div class="csl-entry">
    <div class="csl-left-margin">[1]</div>
    <div class="csl-right-inline">M. Krämer, “citeproc-java: A Citation Style
      Language (CSL) processor for Java,” 09-Nov-2019. [Online]. Available: [Accessed: 09-Nov-2019].

Find more examples and the full documentation on the citeproc-java website.

Profile image of Michel Krämer

Posted by Michel Krämer
on 9 November 2019

Next post

Steep - Run Scientific Workflows in the Cloud

I’m thrilled to announce that the workflow management system I’ve been working on for the last couple of years is now open-source! Read more about Steep and its features in this blog post.

Previous post

New major version 4.0.0 of gradle-download-task

I’m thrilled to announce that a new major version 4.0.0 of the gradle-download-task plugin has just been released. This version provides many new features and is recommended for all users.

Related posts

Generating citations and bibliographies with CSL and citeproc-java

I’m thrilled to announce the first release of citeproc-java, a library to generate citations and bibliographies. It is similar to BibTeX but uses CSL under the hood and is therefore much more flexible.

Command line tool for citations and bibliographies

Version 0.6 of citeproc-java introduces a command line tool that can be used to generate citations and bibliographies without setting up a complete development environment.

Generate citations and bibliographies faster with citeproc-java 3.0.0

A new version of the CSL processor has just been released. It is now a pure Java implementation and does not rely on JavaScript and citeproc-js any more. This improves performance and avoids compatibility issues.