or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

docs

index.md
tile.json

tessl/maven-com-google-protobuf--protobuf-bom

Maven Bill of Materials for Protocol Buffers Java libraries providing dependency version management

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
mavenpkg:maven/com.google.protobuf/protobuf-bom@4.31.x

To install, run

npx @tessl/cli install tessl/maven-com-google-protobuf--protobuf-bom@4.31.0

index.mddocs/

Protocol Buffers BOM

Protocol Buffers BOM (Bill of Materials) is a Maven dependency management artifact that provides version coordination for Protocol Buffers Java libraries. It ensures compatible versions across protobuf-java, protobuf-java-util, and protobuf-kotlin artifacts, simplifying dependency management for Java projects using Protocol Buffers.

Package Information

  • Package Name: protobuf-bom
  • Package Type: Maven BOM (Bill of Materials)
  • Group ID: com.google.protobuf
  • Artifact ID: protobuf-bom
  • Version: 4.31.1
  • Language: Java (Maven)
  • Installation: Add to Maven <dependencyManagement> section

Core Usage

Import the BOM in your Maven project's dependency management section:

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>com.google.protobuf</groupId>
      <artifactId>protobuf-bom</artifactId>
      <version>4.31.1</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

Basic Usage

After importing the BOM, declare Protocol Buffers dependencies without specifying versions:

<dependencies>
  <!-- Core Protocol Buffers Java library -->
  <dependency>
    <groupId>com.google.protobuf</groupId>
    <artifactId>protobuf-java</artifactId>
    <!-- version inherited from BOM -->
  </dependency>
  
  <!-- Protocol Buffers utilities (JsonFormat, etc.) -->
  <dependency>
    <groupId>com.google.protobuf</groupId>  
    <artifactId>protobuf-java-util</artifactId>
    <!-- version inherited from BOM -->
  </dependency>
  
  <!-- Protocol Buffers Kotlin support -->
  <dependency>
    <groupId>com.google.protobuf</groupId>
    <artifactId>protobuf-kotlin</artifactId>
    <!-- version inherited from BOM -->
  </dependency>
</dependencies>

Capabilities

Dependency Version Management

Coordinates versions for all Protocol Buffers Java libraries to ensure compatibility.

<!-- BOM Import Configuration -->
<dependency>
  <groupId>com.google.protobuf</groupId>
  <artifactId>protobuf-bom</artifactId>
  <version>4.31.1</version>
  <type>pom</type>
  <scope>import</scope>
</dependency>

Managed Dependencies

The BOM manages versions for the following Protocol Buffers artifacts:

<!-- Managed: Core Protocol Buffers Java Runtime -->
<dependency>
  <groupId>com.google.protobuf</groupId>
  <artifactId>protobuf-java</artifactId>
  <!-- version: 4.31.1 -->
</dependency>

<!-- Managed: Protocol Buffers Java Utilities -->
<dependency>
  <groupId>com.google.protobuf</groupId>
  <artifactId>protobuf-java-util</artifactId>
  <!-- version: 4.31.1 -->
</dependency>

<!-- Managed: Protocol Buffers Kotlin Support -->
<dependency>
  <groupId>com.google.protobuf</groupId>
  <artifactId>protobuf-kotlin</artifactId>
  <!-- version: 4.31.1 -->
</dependency>

Version Coordination

Ensures all Protocol Buffers artifacts use compatible versions automatically.

<!-- All these dependencies will use version 4.31.1 -->
<dependencies>
  <dependency>
    <groupId>com.google.protobuf</groupId>
    <artifactId>protobuf-java</artifactId>
  </dependency>
  <dependency>
    <groupId>com.google.protobuf</groupId>
    <artifactId>protobuf-java-util</artifactId>
  </dependency>
  <dependency>
    <groupId>com.google.protobuf</groupId>
    <artifactId>protobuf-kotlin</artifactId>
  </dependency>
</dependencies>

Managed Artifacts

protobuf-java

Type: Core Runtime Library
Group ID: com.google.protobuf
Artifact ID: protobuf-java
Managed Version: 4.31.1
Description: Core Protocol Buffers Java runtime library providing message serialization and deserialization capabilities.

protobuf-java-util

Type: Utility Library
Group ID: com.google.protobuf
Artifact ID: protobuf-java-util
Managed Version: 4.31.1
Description: Protocol Buffers Java utility library including JsonFormat for JSON serialization and other helpful utilities.

protobuf-kotlin

Type: Kotlin Language Bindings
Group ID: com.google.protobuf
Artifact ID: protobuf-kotlin
Managed Version: 4.31.1
Description: Protocol Buffers Kotlin language bindings providing idiomatic Kotlin APIs for Protocol Buffers usage.

Related Artifacts

The following Protocol Buffers artifacts are available but are NOT managed by this BOM and require explicit version specification:

protobuf-javalite

Group ID: com.google.protobuf
Artifact ID: protobuf-javalite
Description: Lightweight Protocol Buffers Java runtime optimized for Android and resource-constrained environments. Smaller size but with limited reflection capabilities.

Usage:

<dependency>
  <groupId>com.google.protobuf</groupId>
  <artifactId>protobuf-javalite</artifactId>
  <version>4.31.1</version> <!-- explicit version required -->
</dependency>

protobuf-kotlin-lite

Group ID: com.google.protobuf
Artifact ID: protobuf-kotlin-lite
Description: Lightweight Protocol Buffers Kotlin language bindings optimized for Android and resource-constrained environments.

Usage:

<dependency>
  <groupId>com.google.protobuf</groupId>
  <artifactId>protobuf-kotlin-lite</artifactId>
  <version>4.31.1</version> <!-- explicit version required -->
</dependency>

Project Metadata

<!-- Project Coordinates -->
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-bom</artifactId>
<version>4.31.1</version>
<packaging>pom</packaging>

<!-- Project Information -->
<name>Protocol Buffers [BOM]</name>
<description>A compatible set of open source libraries for working with protocol buffers.</description>
<url>https://developers.google.com/protocol-buffers/</url>

<!-- Organization -->
<organization>
  <name>Google LLC</name>
  <url>https://protobuf.dev</url>
</organization>

<!-- License -->
<license>
  <name>BSD-3-Clause</name>
  <url>https://opensource.org/licenses/BSD-3-Clause</url>
</license>

<!-- Source Control -->
<scm>
  <url>https://github.com/protocolbuffers/protobuf</url>
  <connection>scm:git:https://github.com/protocolbuffers/protobuf.git</connection>
</scm>