Skip to main content

在 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 的系統指令會稍微不同,; 要換成 :