求助:system.getProperty(“JFS_HOME”)的问题 用system.getproperty()返回java系统信息, 但是system.getProperty(“JFS_HOME”)的返回值是null,说明这个路径值没设置好,,请问如何查看并把值设置好呢? 谢谢大家! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 命令行中输入java javac to grass_12:这个只是查看java命令参数的吧,不能解决我的问题。 try it Properties p = System.getProperties(); p.list(System.out); to YY_MM_DD:这个方法可以查到java系统信息,但是没有JFS_HOME的key和value值,如果我要添加JSF_HOME的话,应该怎样做呢?谢谢! 以下是我更具你的要求在用户变量和系统环境变量里设置的内容:用户环境变量中:变量名:JSF_HOME 变量值:.;E:\java\lib;E:\java\lib\tools.jar ;E:\系统环境变量中:变量名:classpath 变量值:JSF_HOME以下是我的测试代码及部分输出结果:测试代码:public class Tester { public static void main(String[] args) { System.out.println(System.getProperties()); System.out.println(System.getProperty("sun.boot.library.path")); }}部分输出结果:{java.runtime.name=Java(TM) SE Runtime Environment, sun.boot.library.path=E:\java\jre\bin, java.vm.version=11.0-b15, java.vm.vendor=Sun ..........................................(这里省略N行)....... sun.cpu.isalist=pentium_pro+mmx pentium_pro pentium+mmx pentium i486 i386 i86}E:\java\jre\bin重要的几点我都标上红色了虽然不是太懂,但是会隐约知道JSF_HOME只不过是用户随便设置的变量名,换成XXX_HOME也行,将System.getProperty的参数换成sun.boot.library.path后 只会输出E:\java\jre\bin因此,可以推断,System.getProperties());意思是输出系统当前的所有属性。而System.getProperty只是输出系统当前属性中的某个指定属性,那么system.getProperty(“JFS_HOME”)输出结果为NULL是正常的,因为系统当前没有名叫JSF_HOME这项属性。以上解释为什么会输出null你说如何添加JSF_HOME的意思是在系统当前属性里添加JSF_HOME这项属性吗?可以随便给系统添加属性吗?如果只是作为一个用户变量使用的话,这让我想到半年前我刚装JDK设置环境变量时当时在用户变量里定义了一个CLASS_HOME,然后在系统变量里classpath的值设置为CLASS_HOME,感觉着两个东西是一个道理 变量名:classpath 变量值:JSF_HOME -----------------------------------------classpath 变量值:%JSF_HOME%另:获得环境变量的值是使用 System.getenv 方法,而不是 System.getProperty 方法,后者是获得系统属性的值或者是启动参数中 -Dxxx=yyyy 中 xxx 的值。 System.out.println(System.getenv("JSF_HOME "));试试看 截取字符串。。 String转换xml 问题 多线程问题? 关于table的表头不显示问题 开始学JSP有什么书比较好 如何获得变量的名字和值? 为什么我不会写???? 初学者的问题,java的配置和运行? JDeveloper现在发展成什么版本了? 输入问题:见内! eclipse web工程如何测试这些javabean类 为什么echo $JAVA_HOME的值和System.getProperty()的java.home值不一样呢 ?
java
javac
这个只是查看java命令参数的吧,不能解决我的问题。
Properties p = System.getProperties();
p.list(System.out);
这个方法可以查到java系统信息,但是没有JFS_HOME的key和value值,如果我要添加JSF_HOME的话,应该怎样做呢?谢谢!
用户环境变量中:
变量名:JSF_HOME 变量值:.;E:\java\lib;E:\java\lib\tools.jar ;E:\
系统环境变量中:
变量名:classpath 变量值:JSF_HOME
以下是我的测试代码及部分输出结果:
测试代码:
public class Tester {
public static void main(String[] args) {
System.out.println(System.getProperties());
System.out.println(System.getProperty("sun.boot.library.path"));
}
}
部分输出结果:
{java.runtime.name=Java(TM) SE Runtime Environment, sun.boot.library.path=E:\java\jre\bin, java.vm.version=11.0-b15, java.vm.vendor=Sun ..........................................(这里省略N行)....... sun.cpu.isalist=pentium_pro+mmx pentium_pro pentium+mmx pentium i486 i386 i86}
E:\java\jre\bin
重要的几点我都标上红色了
虽然不是太懂,但是会隐约知道JSF_HOME只不过是用户随便设置的变量名,换成XXX_HOME也行,
将System.getProperty的参数换成sun.boot.library.path后 只会输出E:\java\jre\bin
因此,可以推断,System.getProperties());意思是输出系统当前的所有属性。而System.getProperty只是输出系统当前属性中的某个指定属性,那么system.getProperty(“JFS_HOME”)输出结果为NULL是正常的,因为系统当前没有名叫JSF_HOME这项属性。
以上解释为什么会输出null
你说如何添加JSF_HOME的意思是在系统当前属性里添加JSF_HOME这项属性吗?可以随便给系统添加属性吗?
如果只是作为一个用户变量使用的话,这让我想到半年前我刚装JDK设置环境变量时当时在用户变量里定义了一个CLASS_HOME,然后在系统变量里classpath的值设置为CLASS_HOME,感觉着两个东西是一个道理
classpath 变量值:%JSF_HOME%另:获得环境变量的值是使用 System.getenv 方法,而不是 System.getProperty 方法,
后者是获得系统属性的值或者是启动参数中 -Dxxx=yyyy 中 xxx 的值。
试试看