`
longdick
  • 浏览: 585442 次
  • 性别: Icon_minigender_1
  • 来自: 0
社区版块
存档分类
最新评论

Java Runtime Environment初探

阅读更多

一直都认为java的jre环境配置比较麻烦,特别是一台pc机器上装了多种不同版本的jre。当一个应用程序在不同的机器上迁移的时候,jre的不同会让你遇到一些意想不到的错误,解决这种问题的方法有两个,一个就是在应用程序中绑上一个jre,让应用程序不管到了哪里,都用的是自己的jre;另一个就是通过改变客户机的jre,比如说向客户机的jre里加入一些应用程序所必需用到的jar包等等。
第一种方法简单是简单,但是有一个最大的弊端,就是附带了jre的应用程序的容量会变得很大,一般情况下至少有增加60MB。。。我原来的程序才1MB多。。。
那就考虑第二种,让客户在运行我的安装程序时,安装程序自动查找到客户机当前使用的jre,并向jre里添加程序所需要的jar包。
以下就是一段取得jre路径的代码,只针对pc平台:

import java.io.*;


public class Setup {

public void createTemp() throws IOException{
Runtime.getRuntime().exec("regedit /ea jrepath.temp \"HKEY_LOCAL_MACHINE\\SOFTWARE\\JavaSoft\\Java RunTime Environment\"");
try {
Thread.sleep(1000);//足够的时间间隔
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public String getJrePath() throws IOException{

File f;
FileReader fr;
BufferedReader br;
f=new File("jrepath.temp");
fr = new FileReader(f);//读取注册表临时文件
br=new BufferedReader(fr);
String line=br.readLine();
while(line!=null){
if(line.indexOf("JavaHome")!=-1){
break;
}
line=br.readLine();
}

br.close();

fr.close();
f.delete();//临时文件删除
String[] info=line.split("\"");


return info[3];
}

public void copyFiles(String filePath1,String filePath2) throws IOException{
File f1,f2;
FileInputStream fin;
FileOutputStream fout;
f1=new File(filePath1);
fin=new FileInputStream(f1);
f2=new File(filePath2);
fout=new FileOutputStream(f2);
int i;
while((i=fin.read())!=-1){
fout.write(i);
}
fout.close();
fin.close();


}
public static void main(String[] artg) throws IOException{

Setup setup=new Setup();
setup.createTemp();
String jrePath=setup.getJrePath();
System.out.println(jrePath);

}
}

分享到:
评论

相关推荐

    Java Runtime Environment JRE 1.4.2

    Java Runtime Environment (JRE) 1.4.2 是Java应用程序执行所需的关键组件,它为开发者和用户提供了在各种操作系统上运行Java应用的基础。这个版本是Sun Microsystems在2004年发布的一个重要里程碑,它在Java技术的...

    Java Runtime Environment-6.0

    Java Runtime Environment-6.0.26.exe

    Java Runtime Environment 1.6.0.7 (32-bit

    Java Runtime Environment(JRE)是Java程序运行所需的基础组件,由Oracle公司提供。1.6.0.7 版本是针对32位操作系统的一个特定发行版,这意味着它设计用于在32位Windows系统上执行Java应用程序。在这个版本中,Java...

    Java Runtime Environment1.8.0

    Java Runtime Environment 1.8.0是Java开发和运行应用程序必不可少的一部分,它是Oracle公司发布的Java平台标准版(Java SE)的实现。这个版本是32位的,这意味着它设计用于在32位操作系统上运行,比如Windows XP、...

    32位的Java Runtime Environment

    Java Runtime Environment(JRE)是Java程序运行所需的基础软件组件,它是Java开发工具集(Java Development Kit,JDK)的一部分。32位的Java Runtime Environment是专为32位操作系统设计的版本,允许用户在这样的...

    java runtime environment 1.8.0_45 64bit.rar

    Java Runtime Environment(JRE)是Java程序运行所需的基础组件,它是Oracle公司提供的Java平台标准版(Java SE)的一部分。在本例中,我们讨论的是版本1.8.0_45,这是一个64位的版本,专为64位操作系统设计。这个...

    java runtime environment 1.8.0_45 64bit

    Java Runtime Environment(JRE)是Java程序运行所需的基础组件,它是Oracle公司提供的Java平台的核心部分。JRE 1.8.0_45是Java 8的一个特定版本,64位版本则是为在64位操作系统上运行Java应用程序设计的。这个版本...

    java runtime environment(JRE)安装 2020-11-4

    java runtime environment(JRE)安装 2020-11-4 一、搭建环境 1.1 安装Keil 5 官网下载:http://www2.keil.com/mdk5/ 百度网盘:https://pan.baidu.com/s/18t_ta0WWX_f1KCKXfgj_Zw 提取码:gx3r 1.2 安装JRE 由于...

    Java Runtime Environment (JRE) 5.0 Update 21

    Installation notes for the J2SE Runtime Environment 5.0 (JRE), including system requirements and installation instructions, are available for the following platforms. Platform 32-bit Installation 64...

    JNA方式调用dll报错:A fatal error has been detected by the Java Runtime Environment:

    标题中的“JNA方式调用dll报错:A fatal error has been detected by the Java Runtime Environment:”是一个典型的Java编程问题,涉及到Java Native Access (JNA) 和动态链接库(dll)的交互。JNA是Java平台的一个...

    Java Runtime Environment-6.0.200.2.exe

    Java Runtime Environment-6.0.200.2.exe JRE为JavaRunTimeEnvirment的简称,JavaRuntimeEnvironment(包括JavaPlug-in)是Sun的产品,包括两部分:JavaRuntimeEnvironment和JavaPlug-inJavaRuntimeEnvironment(JRE...

    64位的Java Runtime Environment

    Java Runtime Environment(JRE)是Java程序运行所需的基础软件组件,它包含了Java虚拟机(JVM)、类库以及其他支持Java应用程序执行的组件。64位的Java Runtime Environment是为了在64位操作系统上运行Java程序而...

    64位 java runtime 1.8.0.zip

    Java Runtime Environment(JRE)是Java程序运行所需的基础组件,它是Oracle公司提供的Java平台标准版(Java SE)的一部分。在本例中,我们讨论的是64位版本的JRE 1.8.0,适用于Windows操作系统。这个版本的JRE包含...

    Java Runtime Environment-6.0.450.rar

    Java Runtime Environment(JRE)是Java程序运行所必需的基础组件,它包含了Java虚拟机(JVM)、类库以及Java程序运行所需的各种服务。在本例中,我们关注的是版本6.0.450,这是一个相对早期的版本,但它仍然在许多...

    Java Runtime Environment 8u201 - jre8 64位

    Java Runtime Environment(JRE)是Java程序运行所需的基础组件,它包含了Java虚拟机(JVM)、类库以及其他支持Java应用程序执行的必要组件。标题提到的"Java Runtime Environment 8u201"是指Java 8的第201次更新,...

    Java运行环境 Java SE Runtime Environment 8.0.172.x86官方多语言正式版

    Java SE Runtime Environment(运行时环境)包含了运行以 Java 编程语言编写的程序所必需的 Java 虚拟机、运行时类库和 Java 应用程序启动器。 Java 平台的安全性 一个由角色提供的安全信息的描述。适用于开发人员...

    Java SE Runtime Environment 8 Winx64 Downloads

    Java Runtime Environment,Java运行环境64位安装包,官网下载。 Java SE Runtime Environment 8 Downloads Do you want to run Java™ programs, or do you want to develop Java programs? If you want to run ...

    Java Runtime Environment-6.0.340

    java环境必备软件,很多软件运行时需要的就是这个环境

    Java SE Runtime Environment (JRE) 6.0 Update 24

    运行JAVA程序不可缺少的环境。一旦拥有Java软件,您即会进入一个全新的互动世界。  Java语言是稳居网络应用程序语言的首选之一。这都要归功于它高度的安全性以及跨平台的特性,几乎在目前所有的电脑平台上您都可以...

    Java Runtime Environment-6.0.29

    java 环境安装,版本6.0.29,可以用来支持java软件的开发,也可以支持android软件开发环境

Global site tag (gtag.js) - Google Analytics