2011-05-27 223 views
0

我剛剛下載了MCP以查看Minecraft幕後的工作情況。從java運行批處理文件

內MCP有批處理文件一堆您用來做這樣的事情:反編譯,重新編譯,startclient等

我想做什麼就能做的是從一個基本的運行這些批處理文件java gui。

我很喜歡gui的一部分,但我還沒有得到一個線索如何運行這些批處理文件。

這裏是批處理文件中的一個的示例:

該文件在:

C:\ MCP \ startclient.bat

startclient包含以下內容:

@echo off 

:try_python 
set PYTHON=python 
%PYTHON% --version >NUL 2>NUL 
if errorlevel 1 goto try_python_mcp 
goto foundit 

:try_python_mcp 
set PYTHON=runtime\bin\python\python_mcp 
%PYTHON% --version >NUL 2>NUL 
if errorlevel 1 (
    echo Unable to locate python. 
    pause 
    exit /b 
) 

:foundit 
%PYTHON% runtime\startclient.py conf\mcp.cfg 
pause 

可以這樣做嗎?

+0

我很驚訝他們不提供x-plat'build.xml'或類似的東西。他們正在發展什麼樣的十年(/千年)? – 2011-05-27 22:30:37

回答

4

可以使用運行時輕鬆地運行從Java的批處理文件:

Process p = Runtime.getRuntime().exec("cmd /c start " + yourbatchFileName); 

你也可以搶我的過程中/ O,使用p.getOutputStream()p.getInputStream()

查看更多有關Process類here

而且我建議你看看this article以及。

+0

但是這將在JVM之外。 – 2011-05-27 22:14:19

+0

批處理文件不適用於java,但是對於(通常)Windows cmd,這是我知道的有關通過最大控制從java運行這些文件的唯一方法。 – MByD 2011-05-27 22:19:31

+0

呼籲將鏈接添加到Java World'gotchas'文章。任何試圖使用「進程」的人都需要閱讀,遲早。 – 2011-05-27 22:33:44