Skip to content
JODConverter automates document conversions using LibreOffice or Apache OpenOffice.
Branch: master
Clone or download
Pull request Compare This branch is 587 commits ahead, 1 commit behind mirkonasato:master.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
etc Upgrade google style to the latest version. Oct 17, 2017
gradle Upgrade to PowerMock 2.0.0 Feb 25, 2019
jodconverter-cli Upgrade to PowerMock 2.0.0 Feb 25, 2019
jodconverter-core Fix list May 24, 2019
jodconverter-local Create a PageSelectorFilter for Draw document (odg) Apr 17, 2019
jodconverter-online Fix some problems from the PMD report. Nov 2, 2018
jodconverter-samples Added vsd and vsdx formats. May 24, 2019
jodconverter-spring-boot-starter Add .doc to .xhtml conversion test Mar 1, 2019
jodconverter-spring Polish Nov 23, 2018
.cirrus.yml install libreoffice Apr 2, 2019
.codacy.yml Exclude sample projects from codacy check. Feb 21, 2018
.gitattributes added .gitattributes in order to normalize eol Apr 24, 2017
.gitignore Creation of a sample using jodconverter-spring-boot-starter (#34) Nov 15, 2017
.travis.yml Skip javadoc on travisCI Feb 25, 2019
README.md Cirrus CI integration. Apr 2, 2019
appveyor.yml Skip javadoc on travisCI Feb 25, 2019
build.gradle Upgrade dependencies Jan 18, 2019
checkstyle.xml Update dependencies Jun 15, 2018
dependencies.gradle Upgrade to PowerMock 2.0.0 Feb 25, 2019
gradle.properties Post Release 4.2.2 Nov 30, 2018
gradlew Make `gradlew` executable (refs #74) May 15, 2018
gradlew.bat Switch to gradle with source code quality checks (google style guide) Mar 27, 2017
ruleset.xml Fix some problems from the PMD report. Nov 2, 2018
settings.gradle Creation of a sample JODConverter Rest API using spring boot. Jan 25, 2018
spotless.importorder Change package to reflect group id org.jodconverter Apr 27, 2017
spotless.license.java Update year in license headers. Jan 26, 2018

README.md

  LibreOffice / Apache OpenOffice

Build Status Build status Build Status Coverage Status Codacy Badge License Maven Central Javadocs Join the chat at https://gitter.im/jodconverter/Lobby

I created this fork because I had to do some changes to the original project and now it is time to share my work with the community.

What you want to know...

  • Documentation: The JODConverter documentation (work in progress) can be found here.
  • Dependencies: See this for main project dependencies. This fork does not depend on SIGAR. JODConverter only needs to retrieve office processes (PIDs) and kill office processes (using PID). It should work just fine without SIGAR with the actual process managers created from an older version of JODConverter. But I added the ability to use any process manager you would like to implement if none of the provided managers can be used. See the processManager configuration option.
  • Tests: JODConverter is supposed to work just fine on recent versions of Windows, MacOS and Unix/Linux. Any confirmation would be welcome so we could build a list of official supported OS distributions.

Usage for local conversions

Gradle:

compile 'org.jodconverter:jodconverter-local:4.2.2'

Maven:

<dependency>
  <groupId>org.jodconverter</groupId>
  <artifactId>jodconverter-local</artifactId>
  <version>4.2.2</version>
</dependency>

Building the Project

With LibreOffice libraries:

gradlew clean build -x test

With OpenOffice libraries:

gradlew clean build -x test -PuseOpenOffice

Building Cli Executable

gradlew clean build -x test distZip

Support 💬

JODConverter Gitter Community Join the chat at https://gitter.im/jodconverter/Lobby, growing FAQ.

How to contribute

  1. Check for open issues, or open a new issue to start a discussion around a feature idea or a bug.
  2. If you feel uncomfortable or uncertain about an issue or your changes, feel free to contact me on Gitter using the link above.
  3. Fork this repository on GitHub to start making your changes.
  4. Write a test showing that the bug was fixed or that the feature works as expected.
  5. Note that the repository follows the Google Java style. You can format your code to this format by typing gradlew spotlessApply on the subproject you work on (e.g, gradlew :jodconverter-local:spotlessApply), by using the Eclipse plugin, or by using the Intellij plugin.
  6. Create a pull request, and wait until it gets merged and published.

Credits...

Here are my favorite/inspiration forks/projects:

  • XWiki fork: Nice choice if you can afford using the SIGAR tools (which I couldn't sadly). The filter package is strongly inspired by this project.
  • Nuxeo fork: Nice choice if you don't want to use SIGAR and don't came across an unresponsive office process following a timeout exception that drives you crazy.
  • documents4j project: Nice choice if you want 100% perfect conversion using MS Office. But work only on Windows out of the box (Local implementation) and not totally free (since MS Office is not free). The new "job" package is strongly inspired by this project.

A special thanks to:

@michelole who created a pull request in these two forks with a stress test that made my office process to crash every times! My first commit was when I was able to build my things with his stress test on!!

Original JODConverter

JODConverter (Java OpenDocument Converter) automates document conversions using LibreOffice or OpenOffice.org.

The previous home for this project is at Google Code, including some wiki pages.

You can’t perform that action at this time.