package ddd;
 
 
class GetProps {
 
    public static void main(String[] args) {
 
        /* Test reading properties w & w/out security manager */
        
        String s;
 
        try {
 
            System.out.println("About to get os.name property value");
 
          s = System.getProperty("os.name", "not specified");
         System.out.println("  The name of your operating system is: " + s);
 
           System.out.println("About to get java.version property value");
 
          s = System.getProperty("java.version", "not specified");
            System.out.println("  The version of the JVM you are running is: " + s);
 
            System.out.println("About to get user.home property value");
 
            s = System.getProperty("user.home", "not specified");
            System.out.println("  Your user home directory is: " + s);
 
            System.out.println("About to get java.home property value");
 
            s = System.getProperty("java.home", "not specified");
            System.out.println("  Your JRE installation directory is: " + s);
 
 
        } catch (Exception e) {
            System.err.println("Caught exception " + e.toString());
        }
 
    }
 
} 代码编译后所在位置C:\aaa\ddd java -Djava.security.manager ddd.GetProps 
grant codeBase "file:/C:/aaa/ddd/*" 

permission java.security.AllPermission; 

在java.policy中加上了如上的语句 
结果还是出现了 
C:\aaa>java -Djava.security.manager ddd.GetProps 
About to get os.name property value 
The name of your operating system is: Windows XP 
About to get java.version property value 
The version of the JVM you are running is: 1.5.0_11 
About to get user.home property value 
Caught exception java.security.AccessControlException: access denied (java.util. 
PropertyPermission user.home read) 但是如果以上grant codeBase "file:/C:/aaa/ddd/*" 

permission java.security.AllPermission; 

改成 
grant 

permission java.security.AllPermission; 

就没有任何问题了,我想问一下是不是"file:/C:/aaa/ddd/*"这样写有什么错误 谢谢大家指教 忙了一天也没明白。 帖子由 weifengqian 编辑过