2015-12-15 65 views
1

我跟着this tutorial 在Big Managed VMs中启动并运行Bigtable客户端。但有没有办法在本地运行?原因是在开发中远程部署代码是一件痛苦的事情。如何在本地运行managed-vm-gae示例代码

通常我可以使用dev_appserver.sh在本地运行GAE应用程序。但是,当我运行它,我得到这个错误:

Caused by: java.lang.IllegalStateException: Jetty ALPN has not been properly configured.

,这意味着我们需要包括ALPN库?由于我们的代码库位于Java 7中,因此我使用此ALPN版本:7.1.3.v20150130

然后我和这个又试了一次:

dev_appserver.sh --jvm_flag=-Xbootclasspath/p:/Users/shouguoli/tmp/alpn-boot-7.1.3.v20150130.jar 

仍然收到此错误:

Caused by: com.google.apphosting.api.ApiProxy$CallNotFoundException: The API package 'urlfetch' or call 'Fetch()' was not found.

你如何获得它在本地工作?

+1

我正在为此工作 - 希望在明天或周三更新回购。 –

+0

关闭 - 希望通过EoD明天,否则它可能不会发生'直到1月 –

+0

哈哈,赞成票/徽章/声望,你需要做什么!?!? :) – the1plummie

回答

1

上周更新了sample。它基于java 8 compat运行时,这意味着您可以访问大多数App Engine API,包括用户,任务队列和数据存储。

有一个新的Netty TCNative模块使用Boring SSL。

与样品中pom.xml使用它,这样做:

mvn clean -Pmac jetty:run -Dbigtable.projectID=<your-project> -Dbigtable.clusterID=<your-cluster> -Dbigtable.zone=<your-zone>

要在Windows上使用,使用-Pwindows代替-Pmac。对于Linux,省略配置文件-P,因为它是默认值。

部署:

mvn clean gcloud:deploy -Dbigtable.projectID=<your-project> -Dbigtable.clusterID=<your-cluster> -Dbigtable.zone=<your-zone>

注意 - 最好是做本地运行,并为TCNative模块远程运行的清洁是目前特定的代码的运行平台。

我们正在更新我们所有的样本以使用TCNative,我们希望在3/10/16之前完成。