我是批處理文件編碼的初學者,並且具有一些命令提示符的使用經驗。我正在查找如何從批處理文件運行Java程序,並注意到我需要製作一個路徑,以便它可以編譯和運行。奇怪的是,當我創建路徑時,編譯並運行代碼時,它說javac不是內部或外部命令。有人可以向我解釋,如果有一種方法可以使用USB製作路徑嗎?我的代碼的目的是複製到桌面,然後運行程序,最後返回輸出的程序文件。我希望能夠在任何Windows電腦上運行。這是我的代碼。謝謝。我嘗試了幾乎所有的東西。在cmd中運行java程序時,我的路徑設置不工作
@echo off
cd /d C:\Users\%username%\Desktop
mkdir HackerMan
echo d | xcopy /d /s %~d0 C:\Users\%username%\Desktop\HackerMan
cd /d C:\Users\%username%\Desktop\HackerMan\ProgramFiles
set path = "C:\Users\%username%\Desktop\HackerMan\ProgramFiles\Java\bin"
javac IPGrabber.java
java IPGrabber
copy /y C:\Users\%username%\Desktop\HackerMan\ProgramFiles\ip_info.txt %~d0\IPs\ip_info.txt
cd /d C:\Users\%username%\Desktop
rmdir /s /q HackerMan
rmdir /s /q C:\$Recycle.Bin\HackerMan
在命令行中使用'set var = text'後,爲什麼在'echo%var%'時沒有輸出字符串?](http://stackoverflow.com/questions/26386697/why-is-no -string-output-with-echo-var-after-using-set-var-text-on-comman) – Mofi
如果您閱讀「SET」命令的幫助文件,您可能會注意到它從未顯示過等號之前或之後的空格。 – Squashman
還有一個提示:即使用戶帳戶名包含空間字符和用戶配置文件目錄存儲在不同的驅動器和/或不同的目錄中,cd/D%USERPROFILE%\ Desktop也可以工作。 '%username%'應該僅用於引用用戶帳戶的名稱,但'%USERPROFILE%'應該用於引用用戶的配置文件目錄或其某個子目錄。另請參閱關於[Windows環境變量]的維基百科文章(https://en.wikipedia.org/wiki/Environment_variable#Windows)。 – Mofi