java程序中怎么取得JAVA_HOME? System.getProperty(“java.home")取到的跟实际的不一样 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 System.getProperty("java.home")得到的是jre的目录,向上退一层就是JAVA_HOME了转一下String JAVA_HOME = System.getProperty("java.home") ;JAVA_HOME += "\\.." ; 我的机器上java_home是 C:\j2sdk1.4.09而我用System.getPropety取得有时候是C:\j2sdk1.4.09\jre有时候是C:\Program Files\java\j2re1.4.2.09在同一台机器上不一定是哪一个 要看你的程序运行在哪里如果是在cmd下运行你的程序,则得到的是系统的JAVA_HOME如果是在IDE中运行,则得到的是IDE自己部署的JDK环境 System.getProperty(“java.home")就是这个咯。 System.getProperty(“java.home")你们用过这个方法吗?都测试过吗? kevinliuu(@。@) 的正解,同意 你的机器上装有多个 jdk 或 jre,运行程序时,用哪个 jdk, java.home得到的就是哪个jre的位置 to kevinliuu(@。@) 那么在IDE环境中怎么取得系统的java_home? 来个System.getProperties().toString()看一下就知道了 那么在IDE环境中怎么取得系统的java_home?无论怎么取,你最终的应用是跑在服务器上,而不是跑在IDE上,也就是说,你测试时可以使用IDE的环境变量,而发布时要改成系统的环境变量,明白我的意思?另外,据我所知,IDE的环境变量可以自己指定的,我用的是JBuilder,是可以指定的,Eclipse没使用过,不太清楚,不过我相信都应该一样 不知道为什么我就取不到真正的JAVA_HOME,你们就能取到还得自食其力,我用Runtime.exec(“cmd /c set”)取得所有环境变量输出流从里面抽出了JAVA_HOME 昏……真正的JAVA_HOME是你运行的虚拟机的JAVA_HOME。不是你在windows里面定义的JAVA_HOME。明白吗?怎么分不清什么叫做真正的JAVA_HOME呢。。 你给出的解决方法是一种阴不阴阳不阳的方法……对你的程序一点用都没有。你的程序为什么要知道其他虚拟机的JAVA_HOME呢。 你的机器上装有多个 jdk 或 jre,运行程序时,用哪个 jdk, java.home得到的就是哪个jre的位置已测试........ 函数如下:public static String getEnv(String name){StringBuffer sb = new StringBuffer();try{Process p = Runtime.getRuntime().exec("cmd /c echo "+ '%' + name + '%');BufferedReader br = new BufferedReader (new InputStreamReader(p.getInputStream()));String strLine = null;while ((strLine = br.readLine ())!= null){sb.append(strLine);}}catch(Exception e) {}return sb.toString();} 我是一家美国独资公司,做有良好发展前景的互动电视增值业务。公司在中关村银谷大厦,急聘Java工程师,欢迎大家往[email protected]投简历,我们将在第一时间回复。谢谢! to goodboy1881(积木)(专回没人理的帖) 我就是需要windows环境变量里的JAVA_HOME虚拟机的JAVA_HOME跟我没关系 to nirvana_li(东成西就,芝兰境界) 谢谢你提供这个方法我还有另一个问题,希望你能去解答,谢谢http://community.csdn.net/Expert/topic/4836/4836100.xml?temp=.9754755 高人看一下怎么处理这组数据 关于Java和asp 表格添加在JScrollPane中为什么不能现实 请教在java里,哪个类的哪个方法实现弹出文件保存对话框的? 如何将char 转换为 byte 高手请进!(关注者有分) 大家看看这个错误信息是什么意思,谢谢! unix下java 怎样访问数据库!! 请问,如何做出有滚动条的JTextArea? 【100分】Linux下面,JBOSS的项目,总是无法利用getProperty(),获取属性值!救命啊! 求救一个Applet问题,请高手指点~ 关于Applet的问题,请教高手!
String JAVA_HOME = System.getProperty("java.home") ;
JAVA_HOME += "\\.." ;
java_home是 C:\j2sdk1.4.09
而我用System.getPropety取得
有时候是C:\j2sdk1.4.09\jre
有时候是C:\Program Files\java\j2re1.4.2.09
在同一台机器上不一定是哪一个
就是这个咯。
你们用过这个方法吗?
都测试过吗?
那么在IDE环境中怎么取得系统的java_home?
无论怎么取,你最终的应用是跑在服务器上,而不是跑在IDE上,也就是说,你测试时可以使用IDE的环境变量,而发布时要改成系统的环境变量,明白我的意思?另外,据我所知,IDE的环境变量可以自己指定的,我用的是JBuilder,是可以指定的,Eclipse没使用过,不太清楚,不过我相信都应该一样
还得自食其力,我用Runtime.exec(“cmd /c set”)取得所有环境变量输出流
从里面抽出了JAVA_HOME
怎么分不清什么叫做真正的JAVA_HOME呢。。
你的程序为什么要知道其他虚拟机的JAVA_HOME呢。
public static String getEnv(String name)
{
StringBuffer sb = new StringBuffer();
try
{
Process p = Runtime.getRuntime().exec("cmd /c echo "+ '%' + name + '%');BufferedReader br = new BufferedReader (new InputStreamReader(p.getInputStream()));
String strLine = null;
while ((strLine = br.readLine ())!= null)
{
sb.append(strLine);
}
}
catch(Exception e) {}return sb.toString();
}
我就是需要windows环境变量里的JAVA_HOME
虚拟机的JAVA_HOME跟我没关系
谢谢你提供这个方法我还有另一个问题,希望你能去解答,谢谢
http://community.csdn.net/Expert/topic/4836/4836100.xml?temp=.9754755