我試圖運行下面的命令:運行mysql命令從Java
C:\Program Files\MySQL\MySQL Server 5.7\bin\mysql" -u root -padmin <C:\script.sql> C:\redir.txt
通過使用此Java代碼:
Runtime.getRuntime().exec(command);
其中command是包含mysql命令字符串。如果我使用cmd命令,它可以很好地工作,但是如果我運行java行,它不會創建帶有查詢結果的redir.txt。我無法弄清楚它爲什麼不起作用(順便說一下,它不會拋出任何異常或錯誤信息)。
exec()具有一些特殊屬性,使得它很難直接使用。這是一篇非常有用的文章:http://www.javaworld.com/article/2071275/core-java/when-runtime-exec---won-t.html。不過,我也會發布你的代碼。 –
爲什麼?它作爲一項服務運行。它旨在作爲服務運行。創建又一種啓動方式到底是什麼? – EJP