JAVA坏境变量问题(之一)

合集下载

JAVA修改环境变量不生效

JAVA修改环境变量不生效

JAVA修改环境变量不⽣效
1
如果你安装JDK时,在第⼀个安装界⾯,会让你选择安装⼀个JRE,⼀般都会按照默认的选项再安装要给独⽴的JRE。

1. 虽说安装⼀个额外的JRE没有⽤也没有必要,⼀般也就多占了⼀些硬盘空间,但问题是它会在C:\Windows\System32⽬录下⽣成
java.exe、javaw.exe、javaws.exe。

2.
⽽System32下的可执⾏⽂件也会被加⼊环境变量⾥⾯,和你的JDK环境变量造成冲突。

冲突时,谁在前⾯,谁就能⽣效,⽐如你在cmd⾥⾯打java,⽣效的那个就处于环境变量的前⾯
END
解决办法
1.
可以直接删除system32下⾯的java.exe、javaw.exe、javaws.exe3个⽂件,这样它们永远不会再对你的jdk造成冲突
2.
也可以删除那个独⽴的JRE,有了JDK,⼤部分⼈真的没有必要再安装⼀个独⽴的JRE。

3.
⼀般造成这个问题的话,你的%JAVA_HOME%\bin在path的最后,可以把它提到最前⾯使优先级超过system32
4.
最后,献上⼀个很有⽤的cmd命令"where"
⽐如where java可以看到⾃⼰配置好的环境变量到底是真正⽣效了还是system32⾥⾯的jre伪装的。

使用java修改环境变量的方法

使用java修改环境变量的方法

使用java修改环境变量的方法Modifying environment variables in Java can be a challenging task, as Java itself does not provide direct APIs for this purpose. Environment variables are typically managed by the operating system, and Java applications generally rely on the environment set up by the operating system when they are launched. However, there are some workarounds that can be used to achieve this indirectly.在Java中修改环境变量是一个具有挑战性的任务,因为Java本身没有提供直接的API来实现这一目的。

环境变量通常由操作系统管理,而Java应用程序通常依赖于操作系统在启动时为它们设置的环境。

然而,有一些间接的方法可以实现这一目标。

One common approach is to use the `System.setProperty()` method to set Java system properties. Although this does not modify the actual environment variables of the operating system, it allows you to define custom properties within the Java runtime that can be accessed by your application. These properties are specific to the current Java process and do not persist beyond its lifetime.一种常见的方法是使用`System.setProperty()`方法来设置Java系统属性。

centos7下安装java及环境变量配置技巧

centos7下安装java及环境变量配置技巧

centos7下安装java及环境变量配置技巧现在我们常见的⼀些关于Linux的系统很多,但是使⽤的更多的⼀般都是CentOS和Ubuntu,今天我就来记录⼀下关于centos下java的安装和环境变量的配置。

⾸先使⽤xshell连接到centos7,我使⽤的是centos7 *64位,所以⼀切的配置安装都按照的是centos7来进⾏的,当然其他版本的centos的操作也类似,如果有需要的,请⾃⾏百度哈。

本次安装环境:centos7 64位jdk1.8 64位xshell免费版 win10*64位⼀、⾸先进来,需要检查⾃带的openjdk是否卸载(或者是判断是否存在,因为⼀般centos会预装openjdk):在xshell中输⼊rpm -qa | grep java或者输⼊rpm -qa | grep jdkrpm -qa | grep java⼆、如果存在对应的openjdk,展⽰出响应的列表,那么就需要进⾏卸载。

在xshell中输⼊rpm -e --nodeps tzdata- ⽂件名(这个⽂件名就是你查看的openjdk的⽂件列表中的⽂件名),然后删除即可。

三、创建⼀个java的资源库1.⾸先回到根⽬录,输⼊cd /即可。

2.然后输⼊mkdir java。

3.然后进⼊刚才创建的java⽬录,输⼊cd java。

4.输⼊java的下载地址,进⾏下载。

1-4的步骤的操作如下所⽰。

cd /mkdir java/cd javawget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" /otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-x64.tar.gz 5.查看当前下载的⽂件名,然后对下载的java⽂件进⾏解压。

cognos错误列表

cognos错误列表

Cognos8.3错误解决方法总结1、jre 路径导致报错这个时候我遇到一个问题,Cognos Configuration 无法正常启动,提示信息忘记截图了,不过这个问题比较简单。

错误提示中已经详细的描述了解决办法,其实是因为我的开发机上有Tomcat,设置了JA V A_HOME。

并且用的是JDK142的包,所以必须先修改其路径为Cognos的jre。

否则启动Cognos Configuration的时候会报错。

2、Cognos8 运行数据库无法连接遇到这个问题,是因为jdbc的缘故,如果是Oracle作为运行数据库,就会遇到。

将oracle\jdbc\lib\classes12.jar拷贝到Cognos8/webapps/p2pd/WEB-INF/lib下即可.3、错误码:CFG-ERR-0103 Unable to start Cognos 8 service.这个错误出现的原因是你的内容库是oracle,而且oracle数据库没有试用UTF-8编码。

将内容库的oracle更改成UTF-8编码就可以解决问题。

4、CFG-ERR-0106 问题这个问题就比较诡异了,反正就是启动超时,但是又没有具体原因,百度也没有任何解决办法。

外事不决问Google,还是Google强大,E文网站上倒是有不少同学遇到此类问题。

其实,是因为开发机上跑的程序太多,资源占用厉害导致的。

最后确定的解决办法是修改配置文件,增加Cognos的启动时间。

修改c8_location /configuration/ cogconfig.prefs增加以下两个配置ServiceWaitInterval=*默认是500,代表0.5秒ServiceMaxTries=*默认360,代表倍数默认应该是3分钟超时。

我增加到1000*500,8分多钟。

5、CFG-ERR-0103这个问题是在我们的Cognos测试服务器上遇到的,首先想到的就是BAIDU,发现也有不少朋友碰到这个问题。

javaheapspace解决方法和JVM参数设置

javaheapspace解决方法和JVM参数设置

javaheapspace解决⽅法和JVM参数设置在JVM中如果98%的时间是⽤于GC且可⽤的 Heap size 不⾜2%的时候将抛出异常信息,ng.OutOfMemoryError: Java heap space。

所以产⽣这个异样的原因通常有两种:1.程序中出现了死循环2.程序占⽤内存太多,超过了JVM堆设置的最⼤值。

对于第⼀种情况,需要⾃⼰查看程序代码,这⾥不再多说。

第⼆种情况,我们⼿⼯扩⼤JVM堆的参数设置。

JVM堆的设置是指java程序运⾏过程中JVM可以调配使⽤的内存空间的设置。

在JVM启动时,JVM堆会⾃动设置heap size值。

通常-Xms:初始值-Xmx:最⼤值-Xmn:最⼩值Heap Size的设置不宜太⼩,也不宜太⼤。

若设置太⼩程序的响应速度会变慢了,因为GC占⽤了更多的时间,⽽应⽤分配到的执⾏时间较少。

太⼤也会造成空间的浪费,⽽且也会影设置的⽅法主要有以下⼏个:1.就是在执⾏JAVA类⽂件时加上这个参数,其中className是需要执⾏的确类名。

(包括包名)如:java -Xms32m -Xmx800m className 这个不仅解决问题了,⽽且执⾏的速度2.可以在windows更改系统环境变量加上JAVA_OPTS=-Xms64m -Xmx512m。

3.如果⽤的tomcat,在windows下,可以在C:\tomcat5.5.9\bin\catalina.bat(具体路径根据⾃⼰tomcat的位置⽽定)中加上:set JAVA_OPTS=-Xms64m -Xmx256m (⼤⼩依⾃⼰内存⽽4.如果是linux系统Linux 在{tomcat_home}/bin/catalina.sh的前⾯,加 set JAVA_OPTS='-Xms64 -Xmx512'因为程序要从数据读取近10W⾏记录处理,当读到9W的时候就出现 ng.OutOfMemoryError: Java heap space 这样的错误。

JDK的path环境变量配置(两种方式:以windows7为例)

JDK的path环境变量配置(两种方式:以windows7为例)

JDK的path环境变量配置(两种⽅式:以windows7为例)1 path环境变量的作⽤及配置⽅式11.1 path环境变量的作⽤1) 在JDK的bin⽬录下开发程序容易产⽣的问题 如果⽂件过多,不⽅便管理; 删除⾃⼰写过的不需要的⽂件,可能不⼩⼼把JDK⾃带的⼯具给删除了。

2) 如何解决问题呢 notepad这样的命令为什么在任何路径下都能够执⾏,原因是配置path环境变量。

path配置的是可执⾏的⽂件.exe,配置后可以在不同的盘符下访问path路径下的这些可执⾏⽂件。

1.2 Path环境变量的配置⽅式1右键点击桌⾯计算机→选择属性→选择⾼级系统设置→选择⾼级选项卡→点击环境变量→下⽅系统变量中查找path→双击path→将jdk安装⽬录下的bin⽬录添加到最左边并添加分号。

注意:分号是英⽂半⾓符号。

1. 右键点击桌⾯计算机,选择属性2. 点击选择⾼级系统设置3. 选择⾼级选项卡,点击环境变量4. 下⽅"系统变量"中查找Path,双击Path5. 将jdk安装⽬录下的bin⽬录添加到最左边并添加分号,确定。

6. 测试,是否配置成功:【】打开DOS控制台,输⼊javac回车java回车都有内容列表列出,就说明成功了。

补充命令:java -version 可以查看JDK版本号。

2 Path环境变量的配置⽅式2【推荐】1) 先新建⼀个系统变量JAVA_HOME:复制Java安装路径(能看到bin⽂件夹)2) 再修改path:在Path路径中,在最前边添加动态获取Java环境变量:%JAVA_HOME%\bin;3) 最后说⼀下path中配置的路径是有先后顺序关系的,所以将java的路径放在前边,优先检索。

注意分号:英⽂输⼊法下分号1. 打开环境变量窗⼝2. 先新建⼀个系统变量JAVA_HOME:复制Java安装路径(能看到bin⽂件夹)3. 再修改path:在Path路径中,在最前边添加动态获取Java环境变量:%JAVA_HOME%\bin;4. 打开DOS控制台:测试是否配置成功如果有内容列出,说明配置环境变量成功。

Java实验(一)


Checkpoint 1
Stack
heap
2014-9-3
Checkpoint 3 Checkpoint 2 Stack heap Stack heap t1:null void m1(){ Checkpoint 4 t3:null int v1=1; “H v1:1 TextField t1; //checkpoint #1 t1: i” v3:4 Stack heap 3 t1=new TextField("Hi",3); //checkpoint #2 v1:1 t2 t3 m2(v1,t1); Checkpoint 5 “ H “ H v2:1 v1=8; //checkpoint #5 v3:4 o” i” 6 t1: 3 } Stack heap t2 v1:1 “H v2:7 void m2(int v2,TextField t2) “H i” { t1: o” 3 6 int v3=4; v1:1 TextField t3; //checkpoint #3 “H t3=new TextField("Ho",6); i” t1: 3 v2=7; //checkpoint #4 } v1:8
配置 桌面上选择“我的电脑”(右键) > 高级 > 环境变量 在“系统变量”--->“新建” 在变量名中输入:CLASSPATH,变量值中 输入:.; C:\java \LIB\dt.JAR; C:\java \LIB\TOOLS.JAR; Path变量中增加以上数值C:\java \BIN JAVA_HOME 数值 C:\java
2014-9-3
南开大学软件学院
13
Applet特性及创建
import java.applet.Applet; import java.awt.Graphics;

JAVA安装环境变量配置

JA V A_HOME:C:\Program Files\Java\jdk1.6.0_21PATH:%JA V A_HOME%\bin;%JA V A_HOME%\jre\bin;classpath:.;%JA V A_HOME%\lib\dt.jar;%JA V A_HOME%\lib\tools.jar;java环境变量配置windows xp下配置JDK环境变量:1.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为D:\java\jdk1.5.0_08;2.安装完成后,右击“我的电脑”,点击“属性”;3.选择“高级”选项卡,点击“环境变量”;4.在“系统变量”中,设置3项属性,JA V A_HOME,PATH,CLASSPATH(大小写无所谓),若已存在则点击“编辑”,不存在则点击“新建”;5.JA V A_HOME指明JDK安装路径,就是刚才安装时所选择的路径D:\java\jdk1.5.0_08,此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,eclipse等都需要依*此变量);Path使得系统可以在任何路径下识别java命令,设为:%JA V A_HOME%\bin;%JA V A_HOME%\jre\binCLASSPATH为java加载类(class or lib)路径,只有类在classpath中,java命令才能识别,设为:.;%JA V A_HOME%\lib\dt.jar;%JA V A_HOME%\lib\tools.jar (要加.表示当前路径) %JA V A_HOME%就是引用前面指定的JA V A_HOME;6.“开始”->;“运行”,键入“cmd”;7.键入命令“java -version”,“java”,“javac”几个命令,出现画面,说明环境变量配置成功;8.好了,打完收工。

下面开始你的第一个java程序吧。

Windows系统中path环境变量详解

Windows系统中path环境变量详解在学习JAVA的过程中,涉及到多个环境变量(environment variable)的概念,如PATH。

正确地配置这些环境变量,是能够顺利学习、开发的前提。

⽽经常出现的问题是:有的学习者能够按照提⽰⼀步⼀步地正确配置,但时间⼀长就忘了,出现了问题也⽆从下⼿。

究其原因,就是对这些概念没有理解,知其然但不知其所以然。

下⾯的内容,就是帮助⼤家知其所以然。

⼀、基本原理⾸先看PATH环境变量。

JAVA的初学者,必须要学会配置PATH环境变量,否则⽆法编译、运⾏JAVA程序。

那么,为什么要配置PATH环境变量呢?PATH环境变量是做什么的呢?我们从⼀个常见的问题⼊⼿。

当我们安装好JAVA后,若没有正确配置PATH环境变量,则在命令⾏窗⼝(开始->运⾏->输⼊cmd,回车)下运⾏命令java -version(显⽰JAVA的版本)命令时,会出现如下的错误提⽰信息:图⼀这条错误信息的意思是,你要求运⾏的“java”这条命令我不认识,不知道是个什么玩意⼉。

那么究竟这个“java”命令是何⽅神圣呢?在JDK 的安装⽬录下(我的是D:\Java\jdk1.6.0_24),有⼀个bin⽬录。

打开此⽬录,会发现⼤量的可执⾏⽂件(后缀名为exe的⽂件。

Windows默认隐藏⽂件后缀名。

要显⽰后缀名,可在当前窗⼝上⽅菜单栏⾥点“⼯具”菜单->⽂件夹选项->查看->⾼级设置->清除“隐藏已知⽂件类型的扩展名”前⾯的钩钩->确定)。

其中有⼀个可执⾏⽂件即为java.exe。

现在在命令⾏窗⼝下把当前⽬录切换到这个bin⽬录下。

通过如下命令实现:图⼆在此⽬录下,运⾏dir命令,显⽰当前⽬录下的所有⽂件和⽬录。

从显⽰结果中,我们可以清楚地看到“java.exe”这个⽂件。

如下图所⽰:图三实际上我们执⾏“java”命令,就是要运⾏“java.exe”这个可执⾏⽂件(我们运⾏其他命令,本质上也是要执⾏某个程序⽂件)。

环境变量etc中environmentenvprofile设置及区别

环境变量etc中environmentenvprofile设置及区别(转载⾃/bazhaohua/blog/item/94bdd02e014833341e308974.html,/adparking/archive/2010/06/29/5701764.aspx,纯粹为学习⽽整理)经过我查看资料以后我发现我的environment⾥⾯设置了三个变量path,classpath,和javahome。

那么系统总是先启动environment在查看profile 那么,我在这⾥添加的就要照应environment的变量了,javahome不⽤设定了,两个⽂件是⼀样的,那么其他的不是很全要设定⼀下。

为什么不在environment⾥⾯全部设定完毕呢?应为他是系统的,设定很多没必要,可能还会引发启动问题,起不了机器呢,⼀般不要改。

但是⼜不能总是⼀打开及其就export path=“……”,很⿇烦,那么就在系统⾃动调⽤proflie时设置把。

需要重新启动系统才能⽣效。

在shell中查看env,直接设置path 然后再查看发现变了,但是关了这个shell在打开⼀个还是原来那样。

所以阿,env只是对当前shell有效,启动shell他会查看usr/bin/env。

但是只限于shell.如果在profile中写了export语句他就会⾃动设置给env,那么我们打开哪个shell他们的env也就是PATH……值也都是⼀样的。

在profile⾥设置环境变量是在etc/environment的前提下添加的#/etc/environment(系统环境)中的:PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/jvm/jdk1.6.0_18/bin"CLASSPATH=.:/usr/lib/jvm/jdk1.6.0_18/libJAVA_HOME=/usr/lib/jvm/jdk1.6.0_18#/etc/profile(⽤户环境)中的:export PATH=$PATH:$JRE_HOME/binexport CLASSPATH=$CLASSPATH:/usr/lib/jvm/jdk1.6.0_18/jre/libexport JRE_HOME=/usr/lib/jvm/jdk1.6.0_18/jreexport CATALINA_HOME="/usr/local/tomcat"#env(⽤户环境,全部信息)中的:CLASSPATH=.:/usr/lib/jvm/jdk1.6.0_18/lib:/usr/lib/jvm/jdk1.6.0_18/jre/libPATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/jvm/jdk1.6.0_18/bin:/usr/lib/jvm/jdk1.6.0_18/jre/binJAVA_HOME=/usr/lib/jvm/jdk1.6.0_18JRE_HOME=/usr/lib/jvm/jdk1.6.0_18/jreCATALINA_HOME=/usr/local/tomcat将export LANG=zh_CN加⼊/etc/profile ,退出系统重新登录,登录提⽰显⽰英⽂。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

JAVA环境变量中的JAVA_HOME、path 、classpath 的设置与作用
分2部分,第一部分为JAVA_HOME、path 、classpath分别如何设置。

验证看看jdk安装是否成功。

第二部分为设置JAVA_HOME,CLASSPATH,PATH的目的。

参考资料如下
在把jdk安装到计算机中之后,我们来进行设置使java环境能够使用。

首先右键点我的电脑。

打开属性。

然后选择“高级”里面的“环境变量”,在新的打开界面中的系统变量需要设置三个属性“JAVA_HOME”、“path”、“classpath”,其中在没安装过jdk的环境下。

path属性是本来存在的。

而JAVA_HOME和classpath是不存在的。

一:点“新建”,然后在变量名写上JAVA_HOME,顾名其意该变量的含义就是java的安装路径,呵呵,然后在变量值写入刚才安装的路径“C:\jdk1.6”。

(注:如果安装的路径不是磁盘C或者不是在jdk1.6这个文件夹,可对应修改。

以下文字都是假定安装在C:\jdk1.6里面。


二:其次在系统变量里面找到path,然后点编辑,path变量的含义就是系统在任何路径下都可以识别java命令,则变量值为“.;%JAVA_HOME%\bin”,(其中“%JAVA_HOME%”的意思为刚才设置JAVA_HOME的值),也可以直接写上“C:\jdk1.6\bin”
三:最后再点“新建”,然后在变量名上写classpath,该变量的含义是为java 加载类(class or lib)路径,只有类在classpath中,java命令才能识别。

其值为“.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\toos.jar (要加.表示当前路径)”,与相同“%JAVA_HOME%有相同意思”
以上三个变量设置完毕,则按“确定”直至属性窗口消失,下来是验证看看安装是否成功。

先打开“开始”-> “运行”,打入“cmd”,进入dos系统界面。

然后打“java -version”,如果安装成功。

系统会显示java version jdk"1.6.0"。

确保安装在C盘文件名为jdk1.6,环境变量直接复制就可以了,在dos界面中
输入javac来查看该命令是否合法,同样输入java来查看该命令是否合法
这样环境变量就设置好了,下面进行对PATH,CLASSPTH,JAVA_HOME的讲解以下为设置JAVA_HOME,CLASSPATH,PATH的目的:
1,设置JAVA_HOME:
一、为了方便引用,比如,你JDK安装在C:\Program Files\Java\jdk1.6.0目录里,则设置JAVA_HOME为该目录路径, 那么以后你要使用这个路径的时候, 只需输入%JAVA_HOME%即可, 避免每次引用都输入很长的路径串;
二、归一原则, 当你JDK路径被迫改变的时候, 你仅需更改JAVA_HOME的变量值即可, 否则,你就要更改任何用绝对路径引用JDK目录的文档, 要是万一你没有改全, 某个程序找不到JDK, 后果是可想而知的----系统崩溃!
三、第三方软件会引用约定好的JAVA_HOME变量, 不然, 你将不能正常使用该软件, 以后用JAVA久了就会知道, 要是某个软件不能正常使用, 不妨想想是不是这个问题.
2,设置CLASSPATH:
这是一个很有趣,当然也比较折磨初学者的问题, 这个变量设置的目的是为了程序能找到相应的".class"文件, 不妨举个例子: 你编译一个JAVA程序---A.java, 会得到一个A.class的类文件,你在当前目录下执行java A, 将会得到相应的结果(前提是你已经设置CLASSPATH为"."). 现在, 你把A.class移到别的目录下(例如:"e:\"), 执行java A, 将会有NoClassDefFindError的异常,原因就是找不到.class文件, 现在你把CLASSPATH增加为:".;e:\"再运行java A, 看看会有什么结果~~:)~~~, 一切正常, java命令通过CLASSPATH找到了.class文件! 3,设置PATH:
道理很简单, 你想在任何时候都使用%JAVA_HOME%\bin\java 等来执行java 命令吗, 当然不会, 于是, 你可以选择把%JAVA_HOME%\bin添加到PATH路径下, 这样, 我们在任何路径下就可以仅用java来执行命令了.(当你在命令提示符窗口输入你个代码时,操作系统会在当前目录和PATH变量目录里查找相应的应用程序, 并且执行。

相关文档
最新文档