首次編寫 Java 程序,編譯生成 HelloJava.class,運行時提示「拒絕訪問」。
# Windows
icacls HelloJava.class
# 確保當前用戶有 讀取/執行 權限
# 右鍵屬性 → 安全 → 編輯 → 添加 Users → 完全控制
# Linux/Mac
ls -l HelloJava.class
chmod 644 HelloJava.class # 確保可讀
# 目錄需可執行權限進入
chmod 755 .
package com.example;,class 文件必須在 com/example/HelloJava.class。java -cp . com.example.HelloJava (從包根目錄執行)。java -cp . HelloJava。# Windows: 資源監視器 → CPU → 關聯句柄 搜索 HelloJava.class
# 或 PowerShell
Get-Process | Where-Object {$_.Modules.FileName -like "*HelloJava.class*"}
# Linux: lsof
lsof | grep HelloJava.class
# 關閉佔用進程 (IDE、編輯器、舊 java 進程)
public class HelloJava 文件必須為 HelloJava.java。public static void main(String[] args)。UnsupportedClassVersionError。
public class HelloJava {
public static void main(String[] args) {
System.out.println("Hello, Java!");
}
}
javac HelloJava.java
java -cp . HelloJava
# 輸出: Hello, Java!
HelloJava.class 拒絕訪問 90% 由權限不足、包路徑錯誤、進程佔用引起。依次排查:權限 → 路徑/包結構 → 佔用進程,配合最小驗證腳本隔離環境問題,可快速定位根因。