googleapis / googleapis/google-cloud-java

[java-bigtable] BigTable API - Error connecting to BigTable Emulator

Open
#13,078 1 comment 0 reactions 0 assignees View on GitHub
api: bigtable
Dominant language
Java
Stars
2.1k
Forks
1.2k
Avg merge
1d 23h
Merged PRs (30d)
157

Description

Can you please help me identify why BigTable API fails to connect with BigTable emulator running on Docker?

#### Environment details

1. Specify the API at the beginning of the title - **BigTable**
2. OS type and version: Mac
3. Java version: 17
4. bigtable version(s): Docker BigTable

#### Steps to reproduce

1. Start gcloud BigTable emulator in local Docker.
2. Run the basic Read example - https://github.com/googleapis/java-bigtable/blob/main/samples/snippets/src/main/java/com/example/bigtable/Reads.java

#### Code example

```pom.xml



com.google.cloud
libraries-bom
26.37.0
pom
import

......


.....

com.google.cloud
google-cloud-bigtable

```
```java
try (BigtableTableAdminClient adminClient =
BigtableTableAdminClient.create(projectId, instanceId)) {
CreateTableRequest createTableRequest =
CreateTableRequest.of(tableId)
.addFamily(COLUMN_FAMILY_NAME_STATS)
.addFamily(COLUMN_FAMILY_NAME_PLAN);
adminClient.createTable(createTableRequest);
} catch (IOException e) {
System.out.println("Error during createTable: \n" + e.toString());
throw (e);
}
```

#### Stack trace
```
INFO: Connecting to the Bigtable emulator at localhost:8086
Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/base/Verify
at com.google.cloud.bigtable.admin.v2.BigtableTableAdminSettings.(BigtableTableAdminSettings.java:66)
at com.google.cloud.bigtable.admin.v2.BigtableTableAdminSettings.(BigtableTableAdminSettings.java:53)
at com.google.cloud.bigtable.admin.v2.BigtableTableAdminSettings$Builder.build(BigtableTableAdminSettings.java:265)
at com.google.cloud.bigtable.admin.v2.BigtableTableAdminClient.create(BigtableTableAdminClient.java:151)
at com.thinknear.venice.dao.gcp.BigTableClientTest.createTable(BigTableClientTest.java:63)
at com.thinknear.venice.dao.gcp.BigTableClientTest.main(BigTableClientTest.java:39)
Caused by: java.lang.ClassNotFoundException: com.google.common.base.Verify
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
... 6 more
```

#### External references such as API reference guides

- https://cloud.google.com/bigtable/docs/emulator#client-libraries
- https://cloud.google.com/bigtable/docs/samples-java-hello-world
- https://cloud.google.com/bigtable/docs/samples-java-hello-world#reading-single-row

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.