A comment in one of the project pom files states the protobuf version needs to match the underlying native tensorflow api. (see: https://github.com/tensorflow/java/blob/v0.3.1/tensorflow-core/tensorflow-core-api/pom.xml#L18 ). This is setting the dependent protobuf version to 3.8.0. The table in the tensorflow java readme says the underlying tensorflow version for tensorflow java 0.3.1 is 2.4.1. tensorflow 2.4.1 uses protobuf 3.9.2 (see https://github.com/tensorflow/tensorflow/blob/v2.4.1/tensorflow/workspace.bzl#L584 ) not 3.8.0.