Google maps api 3 在OpenGTS中使用Google地图打开图层
默认情况下,我使用OpenLayers作为OpenGTS地图服务提供商。 我现在正致力于添加谷歌地图作为开放层的基础层之一。 我修改了OpenLayers.js,将“MAPQUEST_showOSMLayer”更改为:Google maps api 3 在OpenGTS中使用Google地图打开图层,google-maps-api-3,openlayers,Google Maps Api 3,Openlayers,默认情况下,我使用OpenLayers作为OpenGTS地图服务提供商。 我现在正致力于添加谷歌地图作为开放层的基础层之一。 我修改了OpenLayers.js,将“MAPQUEST_showOSMLayer”更改为: /* Mapquest OSM */ if (MAPQUEST_showOSMLayer) { this.openLayersMap.addLayer(new OpenLayers.Layer.Google("Google Street")); baseLaye
/* Mapquest OSM */
if (MAPQUEST_showOSMLayer)
{
this.openLayersMap.addLayer(new OpenLayers.Layer.Google("Google Street"));
baseLayerCount++;
}
super.writeJSIncludes(out, reqState, new String[] {
JavaScriptTools.qualifyJSFileRef("maps/jsmap.js"),
(!StringTools.isBlank(jsURL)? jsURL : OPENLAYERS_JS_URL),
JavaScriptTools.qualifyJSFileRef("maps/OpenLayers.js"),
JavaScriptTools.qualifyJSFileRef("http://maps.google.com/maps/api/js?v=3&sensor=false")
});
但当我加载地图时,出现以下错误消息:
[jsMapInit]:openLayers
Error Initializing map
(map provided service maybe temporary unavailable)
ReferenceError:google is not defined
我猜这是因为我没有在谷歌地图api js。
那我应该放在哪里?
或者我应该如何纠正它?
有什么帮助吗?谢谢你找到了路。
在“OpenLayers.java”中添加缺少的google api js文件
转到第180行附近,更改为以下内容:
/* Mapquest OSM */
if (MAPQUEST_showOSMLayer)
{
this.openLayersMap.addLayer(new OpenLayers.Layer.Google("Google Street"));
baseLayerCount++;
}
super.writeJSIncludes(out, reqState, new String[] {
JavaScriptTools.qualifyJSFileRef("maps/jsmap.js"),
(!StringTools.isBlank(jsURL)? jsURL : OPENLAYERS_JS_URL),
JavaScriptTools.qualifyJSFileRef("maps/OpenLayers.js"),
JavaScriptTools.qualifyJSFileRef("http://maps.google.com/maps/api/js?v=3&sensor=false")
});
然后重新编译、重建项目。就这样 抱歉,看起来错误不是来自这段代码。你能提供全部吗?嗨,谢谢你的回复。这绝对不是源于代码。而openlayers.js有2000多行代码。也许您想参考OpenGTS项目?不,我是说,你能提供你的FILENAME.js(或FILENAME.html,FILENAME.ASP,…)代码吗?