Java 运行Bigtable emulator时的BigtableConfiguration v BigtableOptions

Java 运行Bigtable emulator时的BigtableConfiguration v BigtableOptions,java,scala,hbase,bigtable,google-cloud-bigtable,Java,Scala,Hbase,Bigtable,Google Cloud Bigtable,我有一些工作代码。它使用一个对象返回以获得到Bigtable的连接,如下所示: var connection = BigtableConfiguration.connect("myProject", "myCluster") val options = new BigtableOptions.Builder() .setProjectId("myProject") .setInstanceId("myCluster") .setUserAgent("whatever

我有一些工作代码。它使用一个对象返回以获得到Bigtable的连接,如下所示:

var connection = BigtableConfiguration.connect("myProject", "myCluster")
  val options = new BigtableOptions.Builder()
    .setProjectId("myProject")
    .setInstanceId("myCluster")
    .setUserAgent("whatever")
    .build()
返回的连接类型为
com.google.cloud.bigtable.hbase.connection

我知道现在有一个Bigtable模拟器可供本地使用,我希望在测试中使用它。所以我想知道如何利用它

似乎为了利用基于emulator env var的自动配置,您需要使用另一个名为
BigtableOptions
的配置类型类,如下所示:

var connection = BigtableConfiguration.connect("myProject", "myCluster")
  val options = new BigtableOptions.Builder()
    .setProjectId("myProject")
    .setInstanceId("myCluster")
    .setUserAgent("whatever")
    .build()
此类必须检测仿真器。但是,我无法将其传递给现有的
BigtableConfiguration.connect()
方法

因此,我对如何在现有代码中使用这个新的
BigtableOptions
类感到困惑。我可以继续使用对象,但这意味着重新写入

如果设置了env var,我想利用emulator承诺的自动配置,但现在我正在考虑放弃这一点,转而采用类似的解决方案


提前谢谢

如果设置了环境变量,Cloud Bigtable 0.9.4客户端应该只与emulator一起工作。有关实现的详细信息,请参见BigtableOptions源代码中的


如果这对您不起作用,请让我们继续在a上进行讨论。

现在一切正常。因此,
BigtableOptions
似乎只是以某种方式在后台使用,我不需要显式配置它。谢谢你的帮助。