0

默认情况下,我使用 Open Layers 作为我的 OpenGTS 地图服务提供商。我现在正在努力将 Google 地图添加为开放图层的基础图层之一。我通过将“MAPQUEST_showOSMLayer”更改为以下内容来修改 OpenLayers.js:

/* Mapquest OSM */
if (MAPQUEST_showOSMLayer) 
{
    this.openLayersMap.addLayer(new OpenLayers.Layer.Google("Google Street"));
    baseLayerCount++;
}

但是当我加载地图时,出现了这个错误消息:

[jsMapInit]:openLayers
Error Initializing map
(map provided service maybe temporary unavailable)
ReferenceError:google is not defined

我猜是因为我没有放入google maps api js。那我应该放在哪里呢?或者我应该如何纠正它?有什么帮助吗?谢谢

4

1 回答 1

1

找到了路。在“OpenLayers.java”中添加缺少的 google api js 文件。走到180号线附近,改成如下:

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")
});

然后重新编译,重建你的项目。而已!

于 2013-07-11T00:58:38.863 回答