在 Windows cmd 執行 jar

Hi 各位,因有些同學問執行 jar 檔案,若需搭配其他 library 該怎麼寫,在此紀錄及說明~

先找到位置#

請先 cd 到該路徑,

或是先到 jar 檔案所在的資料夾,然後在資料夾網址上點一下,輸入 cmd,就會跳出該位置的 cmd

主要規則#

java -cp <你的 jar 檔案>;<要放入的 library jar>;. <主程式(須包含 package)>

範例#

1. 以下是我的主程式(注意 package 位置與 class 名稱即可)#

package tw.com.jerry;
import java.sql.Connection;
import java.sql.DriverManager;
public class TheMainClass {
public static void main(String[] args) {
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String urlString = "jdbc:sqlserver://localhost:1433;databaseName=JDBCDemoDB2;user=sa;password=passw0rd!";
Connection conn = DriverManager.getConnection(urlString);
boolean status = !conn.isClosed();
System.out.println("Connection Open status: " + status);
conn.close();
} catch (Exception e) {
System.out.println("=== Something Wrong!!! ===");
e.printStackTrace();
}
}
}

2. 檔案位置#

輸出成 jar 檔命名 myjar.jar 後放在 C:\JDBCfile\temp ,MSSQL Driver 的 jar 檔案我放在 lib 資料夾內,如下

jar位置

3. 根據主要規則執行#

再看一次主要規則

java -cp <你的 jar 檔案>;<要放入的 library jar>;. <主程式(須包含 package)>

用 cmd 執行以下敘述(* 號表示讀取 lib 內全部 jar 檔案)

java -cp myjar.jar;lib/*;. tw.com.jerry.TheMainClass

完成就會顯示

finish

註: 失敗的話請注意標點符號,還有需要的空格。

註: mac 的系統指令會稍微不同,; 要換成 :