2012-09-14 70 views
0

我有利用Geoserver的startup.bat文件看起來像這樣打開一個網頁:如何當GeoServer的準備

@echo off 
rem ----------------------------------------------------------------------------- 
rem Startup Script for GeoServer 
rem ----------------------------------------------------------------------------- 

cls 
echo Welcome to GeoServer! 
echo. 
set error=0 

rem JAVA_HOME not defined 
if "%JAVA_HOME%" == "" goto noJava 

rem JAVA_HOME defined incorrectly 
if not exist "%JAVA_HOME%\bin\java.exe" goto badJava 

echo JAVA_HOME: %JAVA_HOME% 
echo. 

rem GEOSERVER_HOME not defined 
if "%GEOSERVER_HOME%" == "" goto noHome 

rem GEOSERVER_HOME defined incorrectly 
if not exist "%GEOSERVER_HOME%\bin\startup.bat" goto badHome 

goto checkDataDir 

:noJava 
    echo The JAVA_HOME environment variable is not defined. 
goto JavaFail 

:badJava 
    echo The JAVA_HOME environment variable is not defined correctly. 
goto JavaFail 

:JavaFail 
    echo This environment variable is needed to run this program. 
    echo. 
    echo Set this environment variable via the following command: 
    echo set JAVA_HOME=[path to Java] 
    echo Example: 
    echo set JAVA_HOME=C:\Program Files\Java\jdk6 
    echo. 
    set error=1 
goto end 


:noHome 
    if exist ..\start.jar goto noHomeOK 
    echo The GEOSERVER_HOME environment variable is not defined. 
goto HomeFail 

:badHome 
    if exist ..\start.jar goto badHomeOK 
    echo The GEOSERVER_HOME environment variable is not defined correctly. 
goto HomeFail 

:HomeFail 
    echo This environment variable is needed to run this program. 
    echo. 
    echo Set this environment variable via the following command: 
    echo set GEOSERVER_HOME=[path to GeoServer] 
    echo Example: 
    echo set GEOSERVER_HOME=C:\Program Files\GeoServer 
    echo. 
    set error=1 
goto end 


:noHomeOK 
    echo The GEOSERVER_HOME environment variable is not defined. 
goto setHome 

:badHomeOK 
    echo The GEOSERVER_HOME environment variable is not defined correctly. 
goto setHome 

:setHome 
    echo Temporarily setting GEOSERVER_HOME to the following directory: 
    cd .. 
    set GEOSERVER_HOME=%CD% 
    echo %GEOSERVER_HOME% 
    echo. 
goto checkDataDir 


:checkDataDir 
    rem GEOSERVER_DATA_DIR not defined 
    if "%GEOSERVER_DATA_DIR%" == "" goto noDataDir 
    goto run 

:noDataDir 
    rem if GEOSERVER_DATA_DIR is not defined then use GEOSERVER_HOME/data_dir/ 
    if exist "%GEOSERVER_HOME%\data_dir" goto setDataDir 
    echo No valid GeoServer data directory could be located. 
    echo Please set the GEOSERVER_DATA_DIR environment variable. 
    echo. 
    echo Set this environment variable via the following command: 
    echo set GEOSERVER_DATA_DIR=[path to data_dir] 
    echo Example: 
    echo set GEOSERVER_DATA_DIR=C:\Program Files\GeoServer\data_dir 
    echo. 
    set error=1 
goto end 

:setDataDir 
    set GEOSERVER_DATA_DIR=%GEOSERVER_HOME%\data_dir 
    echo The GEOSERVER_DATA_DIR environment variable is not defined correctly. 
    echo Temporarily setting GEOSERVER_DATA_DIR to the following directory: 
    echo %GEOSERVER_DATA_DIR% 
    echo. 
goto run 


:run 
    set RUN_JAVA=%JAVA_HOME%\bin\java 
    cd %GEOSERVER_HOME% 
    echo Please wait while loading GeoServer... 
    echo. 
    "%RUN_JAVA%" -DGEOSERVER_DATA_DIR="%GEOSERVER_DATA_DIR%" -Djava.awt.headless=true -DSTOP.PORT=8079 -DSTOP.KEY=geoserver -jar start.jar 
    cd bin 
goto end 


:end 
    if %error% == 1 echo Startup of GeoServer was unsuccessful. 
    echo. 
    pause 

我需要打開一個網頁,一旦利用Geoserver是啓動和運行。我不熟悉批處理腳本,迄今爲止我所有的嘗試都失敗了。我知道我需要調用開始「www」「網頁地址」,但不知道代碼中的哪個位置應該放置此片。 任何幫助表示讚賞。

回答

0

我不太清楚你想要做什麼,但也許這就是你要找的東西?

:run 
    set RUN_JAVA=%JAVA_HOME%\bin\java 
    cd %GEOSERVER_HOME% 
    echo Please wait while loading GeoServer... 
    echo. 
    start /wait "%RUN_JAVA%" -DGEOSERVER_DATA_DIR="%GEOSERVER_DATA_DIR%" -Djava.awt.headless=true -DSTOP.PORT=8079 -DSTOP.KEY=geoserver -jar start.jar 
    start www.website.com 
    cd bin 
goto end 

這將啓動Java文件並等待它完成,然後啓動該網頁,想必該服務器將準備,如果它得到到這一點,所以當罐子執行完畢的網站將會出現。

+0

運行Windows時,說找不到-D。爲了闡明我想要做的事情:當你用上面發佈的文件啓動Geoserver時,它會加載所有的地圖圖層,啓動引擎並通過http:// localhost:8080/geoserver訪問。 Geoserver也能夠服務於您可以通過http:// localhost:8080/geoserver/www訪問的網頁。 我希望bat文件一旦準備好就可以打開http:// localhost:8080/geoserver/www,但我不知道如何。 –