2010-01-02 43 views
8

有没有办法在运行时以编程方式告知Google App Engine应用程序是在本地运行还是在托管运行?我正在寻找一种方法来在本地开发环境中运行时调用某些自定义存根代码,并在运行托管时进行不同的调用。以编程方式确定适用于Java环境的AppEngine

回答

18

您可以在AppEngine 1.3中使用com.google.appengine.api.utils.SystemProperty

import com.google.appengine.api.utils.SystemProperty; 
import static com.google.appengine.api.utils.SystemProperty.environment; 
import static com.google.appengine.api.utils.SystemProperty.Environment.Value.Development; 
import static com.google.appengine.api.utils.SystemProperty.Environment.Value.Production; 

SystemProperty.Environment.Value env = environment.value(); 
if (env == Production) { 
     //prod only code 
     ... 
} else if(env == Development) { 
     //dev only code 
     ... 
} 
0

应用服务引擎的新变种弯曲,你的查询ENV-VAR,谷歌设置:

String gaeAppId = System.getenv("GCLOUD_PROJECT")); 
// gaeAppId contains either the name of app/project, or null (not running on App Engine) 
相关问题