精华内容
下载资源
问答
  • 在windows环境里面开发项目,使用phpstudy集成环境开发,发现我执行composer laravel-wechat的命令行的时候,...但是你命令行执行一直提示你的版本太低,与composer 的版本不匹配,我就懵逼了,后来发现是环境变量的...

     

    在windows环境里面开发项目,使用phpstudy集成环境开发,发现我执行composer  laravel-wechat的命令行的时候,一直提醒我的php版本是5.6,可是我的phpstudy明明是开到了php7.2版本,就是你在项目里面dd(phpinfo())确实是php7.2,但是你命令行执行一直提示你的版本太低,与composer 的版本不匹配,我就懵逼了,后来发现是环境变量的问题,因为没有指定路径,所以就去环境变量中的path去查找默认的路径,发现找到的是php5.6(因为此时我的path里面填写的5.6的程序路径)。。。。。下面就看一下什么是环境变量以及环境变量的作用。希望能帮到远方的你

     

    下面是转载的一篇不错的稳住:https://my.oschina.net/outcat/blog/490614转载 

     

    如下

    我们平时打开一个应用程序,一般是双击桌面图标或在开始菜单链接,无论是桌面的快捷图标还是菜单链接都包含了应用程序的安装位置信息,打开它们的时候系统会按照这些位置信息找到安装目录然后启动程序,比如如QQ:

        知道了一个应用程序的安装目录位置,我们也可以通过命令行工具打开,如笔者QQ的位置为:“C:\Program Files (x86)\Tencent\QQ\QQProtect\Bin\QQProtect.exe”,QQ的应用程序名为为QQProtect.exe,那么我们打开命令行工具Win+R->>cmd->>cd C:\Program Files (x86)\Tencent\QQ\QQProtect\Bin\,使用cd命令进入该目录,再输入“QQProtect”,即可运行qq;

        编辑系统变量名“Path”,在“Path”变量值的后面追加qq的安装目录:“;C:\Program Files (x86)\Tencent\QQ\QQProtect\Bin\ ”注意追加的时候要在目录字符串的前面加个英文的分号“;”,英文分号用来将Path里面不同的路径隔开;

        确定保存后,再回到命令窗口,不管在任何目录下,你只要输入QQProtect(不区分大小写,写成qqprotect也许)的命令,qq就会启动;

        还可以自己新建一个用户变量,比如新建一个叫“QQ”的用户变量,变量值为QQ的安装目录“C:\Program Files (x86)\Tencent\QQ\QQProtect\Bin\”

        此时,修改PATH里的QQ安装目录,从“C:\Program Files (x86)\Tencent\QQ\QQProtect\Bin\”修改为%QQ%;

        在命令窗口输入“QQProtect”,仍然能够启动QQ,也就是说我们可以用某一个用户变量名两边分别加一个百分号,如:“%QQ%”,来代替这个变量名所指向的变量值。

    ----------------------------分割线(再回顾一下环境变量的概念和用途)----------------------------

        环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程。

        很多朋友会在自己的计算机上安装双系统,例如C盘安装Windows XP,D盘安装Windows 7。可是某些软件往往只在Windows XP系统中安装,Windows 7系统中是无法正常使用的,原因是安装软件时往往须要向系统目录中复制某些文件,而使用另外一个系统时会由于缺少这些文件而无法运行。比较麻烦却有效的方法是再安装一遍。当我们了解了环境变量中的用途后就可以很好解决双系统的软件共用问题。

     

     

    上面是path的介绍,希望对你有帮助;

     

    正式说完了,在这里宣传一下朋友的店铺:一个新开的汉服的店铺,满足小时候披床单的愿望,男女都有哟。。。

    店铺名称:汉衿凤韵,点击进店铺,欢迎选购哟,说明了解来源可以优惠!!!

    展开全文
  • 该目录有很多的执行命令,如果在删除java文件时不小心误删了其他.exe文件就会很麻烦; 配置了环境变量就可以在计算机的任意目录使用bin目录里的javac和java等。 所以在安装好JDK后还需要配置Path变量 ...

    如果不配置环境变量,编译和运行java文件只能在jdk安装目录bin目录里进行,而且
    该目录有很多的执行命令,如果在删除java文件时不小心误删了其他.exe文件就会很麻烦;
    配置了环境变量就可以在计算机的任意目录使用bin目录里的javac和java等。 所以在安装好JDK后还需要配置Path变量

    path环境变量配置参考:
    https://blog.csdn.net/YaroDong/article/details/103689813

    展开全文
  • 设置添加环境变量Path

    万次阅读 2017-12-02 20:51:30
    在终端打开geany时要进入到其安装目录下才能打开,这麻烦,因此可以将其设置添加到环境变量中,过程如下: 1,点击Geany图标,右键属性,找到目标路径(如果没有快捷键可以在开始中输入geany再右击) 2,复制...

    以geany编译器为例:
    在终端打开geany时要进入到其安装目录下才能打开,这很麻烦,因此可以将其设置添加到环境变量中,过程如下:
    1,点击Geany图标,右键属性,找到目标路径(如果没有快捷键可以在开始中输入geany再右击)
    这里写图片描述
    2,复制这个路径
    3,打开控制面板—系统与安全—-系统—-高级系统设置—-高级—–环境变量—-在系统变量中找到Path—-点击编辑—–在变量值中移到最右边(注意不要删除里面的值,如果删除了请点击取消重新进来)—-在最右边添加一个分号(英文输入格式下),再复制刚才的路径,并将.exe那个删除,即添加如下

    ;D:\software\geany\bin

    这个时候一直点击确定就完成了
    注意:一定要重新打开新的终端才有效

    以下为增加内容:
    以上是永久性环境变量,如果只想临时性增加环境变量(即只对当前打开的cmd shell有效,关闭之后环境变量自动消失),在终端上操作很简单。
    查看当前已经存在的环境变量
    在终端输入:

    path

    增加新的环境变量,以D:\software\conEmu\为例

    set path=%path%;D:\software\conEmu\

    之后只要输入conEmu下的执行文件名(如ConEmu即可)
    windows不区分path的大小写

    第三次增加:
    通过setx命令可以从终端设置永久环境变量
    如下,以管理员身份打开cmd

    setx path "%path%;路径" /m

    如果提示:无效语法,默认选项不允许超过2次,或者英文:the default argument can only be used 2 times;则将上面的双引号去掉试试。
    加/m为系统环境变量,不加为用户环境变量
    注意!!!上面%path%;一定不能少,否则你会抑郁的,笔者就是因为这个哇哇哇地哭了好多天,。。。

    %path%;代表保留以前的环境变量设置,否则新加的环境变量会覆盖掉以前的值。置于一次增加多个环境变量笔者暂时不知道,以后有机会更新(不是直接在第一个路径后加一个路径,亲试无效)

    展开全文
  • Windows下PATH,CLASSPATH等环境变量详解

    万次阅读 多人点赞 2017-05-22 00:51:38
    转载出处:http://legend2011.blog.51cto.com/3018495/553255,... 在学习JAVA的过程中,涉及到环境变量(environment variable)的概念,如PATH,Classpath等。正确地配置这些环境变量,是能够顺

    转载出处:http://legend2011.blog.51cto.com/3018495/553255,http://blog.csdn.net/u013188532/article/details/52289446

           在学习JAVA的过程中,涉及到多个环境变量(environment variable)的概念,如PATH,Classpath等。正确地配置这些环境变量,是能够顺利学习、开发的前提。而经常出现的问题是:有的学习者能够按照提示一步一步地正确配置,但时间一长就忘了,出现了问题也无从下手。究其原因,就是对这些概念没有理解,知其然但不知其所以然。下面的内容,就是帮助大家知其所以然。

    一、基本原理

        1.首先看PATH环境变量。

         JAVA的初学者,必须要学会配置PATH环境变量,否则无法编译、运行JAVA程序。那么,为什么要配置PATH环境变量呢?PATH环境变量是做什么的呢?我们从一个常见的问题入手。

         当我们安装好JAVA后,若没有正确配置PATH环境变量,则在命令行窗口下运行命令java -version(显示JAVA的版本)命令时,会出现如下的错误提示信息:

         这条错误信息的意思是,你要求运行的“java”这条命令我不认识,不知道是个什么玩意儿。那么究竟这个“java”命令是何方神圣呢?在JDK的安装目录下(我的是D:\Java\jdk1.6.0_24),有一个bin目录。打开此目录,会发现大量的可执行文件(后缀名为exe的文件。Windows默认隐藏文件后缀名。要显示后缀名)。其中有一个可执行文件即为java.exe。现在在命令行窗口下把当前目录切换到这个bin目录下。通过如下命令实现:

       

     在此目录下,运行dir命令,显示当前目录下的所有文件和目录。从显示结果中,我们可以清楚地看到“java.exe”这个文件。如下图所示:

         实际上我们执行“java”命令,就是要运行“java.exe”这个可执行文件(我们运行其他命令,本质上也是要执行某个程序文件)。我们现在再来执行“java -version”这条命令试试。在命令行窗口下键入java -version,回车,结果如下图所示:

     

         看来这次执行成功了。命令结果显示当前JAVA的版本是“1.6.0_24”。执行java -?可查看此命令的帮助信息。可以看到它有很多选项,-version只是其中之一。另外一种方式是,写出这些可执行文件的完整(绝对)路径(例如:d:\Java\jdk1.6.0_24\bin\java -version),就可以在任何目录下执行了。读者可自行尝试。

         与java命令类似,javac命令目前也能在bin目录下执行,但到其他目录下就只能写出其完整路径了。在学习JAVA的过程中,我们经常需要使用javac和java这两条命令来编译、运行我们的JAVA程序。难道我们每次运行这两条命令都要先切换到bin目录下吗或写出一长串的绝对路径吗?能不能有一个办法,让我们能够在任何目录下都能自如地运行这些命令呢?

         解决的办法就在于PATH环境变量。

        PATH是路径的意思,PATH环境变量中存放的值,就是一连串的路径。不同的路径之间,用英文的分号(;)分隔开。系统执行用户命令时,若用户未给出绝对路径,则首先在当前目录下寻找相应的可执行文件、批处理文件(另外一种可以执行的文件)等。若找不到,再依次在PATH保存的这些路径中寻找相应的可执行的程序文件。系统就以第一次找到的为准;若搜寻完PATH保存的所有路径都未找到,则会显示类似于图一的错误信息。

         明白了这些,我们就把bin目录的完整路径添加到PATH中。在命令行窗口下,可使用set命令完成此类的任务。直接运行set,会显示系统当前所有环境变量的值,运行set /?,会显示关于此命令的帮助信息。使用set命令设置环境变量值的格式为:set 环境变量名=环境变量值。我们可以使用命令set path=D:\Java\jdk1.6.0_24\bin将java等程序文件所在的目录添加到PATH环境变量中(Windows下环境变量名不区分大小写,这与UNIX不同)。但是这样会使PATH的值只有“D:\Java\jdk1.6.0_24\bin”,它预先设定供其他程序使用的值就都被覆盖了。因此,我们应该把值“D:\Java\jdk1.6.0_24\bin”追加到PATH中。为此,我们可以使用如下命令:

    set path=%path%;D:\Java\jdk1.6.0_24\bin

         把PATH放在两个百分号之间,指把PATH原有的值取出。其后的分号表示分隔不同的路径值,之后才是我们要添加的值。注意,请在英文输入法状态下使用此命令。现在我们转到任意一个目录下执行java -version命令试试。结果如下图所示:

    图五

         可见运行完全成功。

         但是这种使用set命令的方式设置的环境变量只对当前命令行窗口有效。一旦关闭此窗口,再次运行另一个命令行窗口时,PATH环境变量还是原来的值。因此,我们必须在Windows下修改PATH环境变量。步骤如下:

         右击桌面“我的电脑”图标->属性->高级->环境变量,就打开了了设置环境变量的对话框。上面部分是为某个用户设置。Windows设计为可多用户使用一台机器,每人一个账户。为某个账户设置的变量只对该用户有效。下面部分是设置系统变量,对系统中的每个用户有效。现在一般电脑都只有一个用户,即Administrator。因此只需要为此账户设置即可。找到PATH环境变量,点“编辑”。在“变量值”框内现有值的后面输入英文输入法的分号,然后添加你想添加的值(在这里是D:\Java\jdk1.6.0_24\bin)。一路确定,OK!

         现在再打开一个命令行窗口,输入echo %path%命令查看path的值(或者直接使用path命令亦可)。现在,我们可以看到bin目录已被添加到PATH中,再在任何目录下运行java -version命令,均可成功。如下图所示:

    图六

         其实我们执行其他命令都是这个原理。举例来说,当你显示PATH的值时,你会发现第一个值是C:\WINDOWS\system32。在Windows下打开这个目录,你会看到很多可执行文件,它们的名字与我们常用的命令的名字是一致的。也就是说,我们执行这些命令,实际上系统就是根据PATH的这个值找到了相应的可执行文件,再运行这些文件的结果。如attrib.exe文件,它对应于attrib命令,这是显示/设置文件属性的命令,如下图所示:

    图七

         现在我们通过命令set path=(等号右边什么都没有,或随便写点东西)来清除PATH的值,再来运行attrib命令试试。如下图所示:

    图八

         可以看出,完全相同的命令,现在已无法执行而报错了。

         下面再通过命令set path=c:\windows\system32(Windows下不区分大小写,因此windows与WINDOWS都正确),把attrib.exe文件所在的路径添加到PATH中,再运行试试。如下图所示:

    图九

         很显然,目前已能够正确运行。另外一个常见的例子就是format.com(.com文件是另一种可以执行的文件),不过此命令是用来格式化的,实验时请小心,不要由于失误而格式化了某个盘。而且,根据上面的描述,在PATH环境变量未正确配置的时候,写出这些文件的绝对路径(完整路径),亦可以正确执行。读者可自行实验(在此声明,由于已事先提醒,因此凡是由于误操作带来的数据丢失,概不负责!)。

    2.CLASSPATH变量

     classpath是javac编译器的一个环境变量。它的作用是指定类搜索路径,它与import、package关键字有关。当你improt.java.util.*时,编译器面对import关键字时,就知道你要引入java.util这个package中的类;但是编译器如何知道你把这个package放在哪里了呢?所以你首先得告诉编译器这个package的所在位置;如何告诉它呢?就是设置CLASSPATH啦。 如果java.util这个package在c:\jdk\ 目录下,你得把c:\jdk\这个路径设置到CLASSPATH中去!当编译器面对import java.util.*这个语句时,它先会查找 classpath所指定的目录,并检视子目录java\util是否存在,然后找出名称吻合的已编译文件(.class文件)。如果没有找到就会报错!

        classpath有点像c\c++编译器中的include路径的设置哦,是不是?当c\c++编译器遇到include <iostream>这样的语句,它是如何运作的?哦,其实道理都差不多!搜索include路径,检视文件!当你自己开发一个package时,然后想要用这个package中的类;自然,你也得把这个package所在的目录设置到CLASSPATH中去!CLASSPATH的设定,对JAVA的初学者而言是一件棘手的事。所以Sun让JAVA2的JDK更聪明一些。你会发现,在你安装之后,即使完全没有设定CLASSPATH,你仍然能够编译基本的JAVA程序,并且加以执行

        可以看出,CLASSPATH 里能包含大量备用的搜索路径。然而,使用JAR 文件时要注意一个问题:必须将JAR文件的名字置于类路径里,而不仅仅是它所在的路径。所以对一个名为grape.jar 的JAR 文件来说,我们的类路径需要包括:
       CLASSPATH=.;D:\JAVA \LIB;C:\flavors\grape.jar
       个人理解说明:其实从上面可以看出,如果你用记事本来写java程序(在Window下),并用cmd命令窗口中输入javac,java命令,如果你的代码中用到了其它的jar或者你自己的写的类,但又和你的主程序没在一个包下,这时你就要在classpath中设置你要用到的jar或者自己写的类的路径,让Java在编译器可以找到你要用的东西,如上面例子所示。 在我们用一些工具时,如eclipse中,我们可以把一些Jar包什么的添加进来,然后搜索路径的事工具帮我们做了,所以不用在手动加进去。所以在eclipse实际的开发中,没有用到系统配置的classpath,而是自己会生成一个.classpath的文件;只有用cmd javac 编译时会用到系统的classpath(这也可以改变,见下)。
       classpath=c:\test就表示执行运行命令时去c:\test文件夹去找需要被执行的class文件
       在java5之前该路径是不能指定当前路径的,除非这样设置:classpath=.;c:\test,就表示先在当前目录找class文件,要是没找到就到c:\test去找;(当一个变量有多个值时,多个值之间是有英文的分号隔开),设置从当前所在目录查找(java1.5后默认):set classpath=.
    
    CLASSPATH环境变量。作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPATH来寻找类的.class文件。我们需要把jdk安装目录下的lib子目录中的dt.jar和tools.jar设置到CLASSPATH中,当然,当前目录“.”也必须加入到该变量中。
     javac -c  路径 (可以指定class文件存放目录)
    
     java -cp  路径  (可以指定要执行的class目录)
       (1).何时需要使用-classpath:当你要编译或执行的类引用了其它的类,但被引用类的.class文件不在当前目录下时,就需要通过-classpath来引入类
       (2).何时需要指定路径:当你要编译的类所在的目录和你执行javac命令的目录不是同一个目录时,就需要指定源文件的路径(CLASSPATH是用来指定.class路径的,不是用来指定.java文件的路径的)
       比方有一个Application用到了java.lang.String和com.shinechina.MyClass(我自己写的)这两个类。
    版本1:
    [html]  view plain  copy
    1. package com.shinechina;  
    2. public class MyClass  
    3. {  
    4.    public static void main(String args[])  
    5.    {  
    6.       String str = "版本1: hello, welcome to chinaasp java 技术";  
    7.       System.out.println(str);  
    8.    }  
    9. }   
    版本2:
    [html]  view plain  copy
    1. package com.shinechina;  
    2. public class MyClass{  
    3.    public static void main(String args[]){  
    4.       String str = "版本2:hello,welcome to chinaasp java 技术";  
    5.       System.out.println(str);  
    6.    }  
    7. }  
       现在我要运行 java com.shinechina.MyClass
    
       现在问题来了
    
     Java怎么知道到何处找呢, 他到底该怎么办
    
     假定版本一在 c:\mylib\com\shinechina\MyClass.java
    
     假定版本二在 d:\mylib\com\shinechina\MyClass.java
    
     注意:不要忘了编译成class文件吆, java文件是不能执行的
    
       cd c:\mylib\com\shinechina
       javac *.java
       cd d:\mylib\com\shinechina
       javac *.java
     有了:
     他先到机器的CLASSPATH去找,假设是windows系统 c:\mylib;d:\mylib;d:\jdk1.2.2\lib\rt.jar;
    或unix系统 /home/local/:/usr/local/:/usr/local/jdk1.2.2/lib/rt.jar。好, c:\mylib下他找到了com目录,有戏, 又往下找又有shinechina目录,目录下找到了MyClass.class, Ok 就是他了,至于d:\mylib我的版本2的MyClass他就不理会了,至于String是在rt.jar压缩包中待会再讲他
     执行的结果就是
      版本1: hello, welcome to chinaasp java 技术
     反过来d盘的路径在c:之前,执行的结果就是
      版本2: hello, welcome to chinaasp java 技术
     依次类推, 只有在类路径上第一个找到的才会执行,你要控制他执行那一个须如此:
      java -classpath d:\mylib;%classpath% com.shinechina.MyClass
     执行结果就是
      版本2: hello, welcome to chinaasp java 技术
     开发环境中的执行就是这样,总有一个地方指定类路径的。
     注意,开发环境往往不去读系统路径, 这也就是在外面运行的东东挺溜的进了开发环境就死菜的原因喽。
     比如说jbuilder, jdevoloper从菜单project->project properties...->paths标签->Add...->添加定义好的library点ok或者new->输入name和classpath->ok。这个东东就被添加到了classpath中(运行时可在message view中看到)
     再比如说visualAge for java , 点中你要运行的类->鼠标右击选中特性->类路径标签
           1、->编辑->全选,好,开发环境中的所有类都能找到了。
         2、立即计算(只选中你需要的类, 如果有用class.forName之类通过程序显式装载的类的话,需要自己从编辑中手工家入了, 开发环境每能力帮你算出来了,如果内存没有问题的话,直接编辑->全选更方便吆)
         3、如果你的类并不想引入开发环境的话,点中添加额外路径,编辑(下面的一个), 我不喜欢这样, 就不详细介绍了
      高手的话,直接用jdk, 那么只好麻烦你要么加到系统classpath中(unix下为$CLASSPATH), 要么编译运行时显式指明classpath
      下面介绍一个初学者最容易犯的错误
      还以上节介绍的例子
      假定版本一在 c:\mylib\com\shinechina\MyClass.java
      编译后c:\mylib\com\shinechina\MyClass.class
      怎么指定classpath呢
      常见毛病
       1、c:\mylib\com\shinechina\
       2、c:\mylib\com\
      正确
       1、c:\mylib\
       2、c:\mylib
    classpath的重要性
    
         用eclipse开发项目时,对每个项目都需要配置classpath,具体怎么配只需要在项目上鼠标右键build path.然后一步步操作,你配完之后,打开你的项目所在的workpace,打开你的项目文件,里面有一个.classpath文件,你打开这个文件之后就会看到你之前在eclipse中build path的结果。比如我在项目中加入了一个我先前自己配置的User Library,名字叫做MysqlJDBCDriver ,加完之后,在我的项目的.classpath文件中多出了一条<classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/MysqlJDBCDriver"/>
        我认为项目是独立于电脑环境变量的classpath的,每一个项目都需要它特定的classpath,所以在eclipse开发的时候每一个项目都会有一个.classpath文件(ps:为什么每个项目需要自己的classpath?因为每个项目都需要引入自己特定的类库,而电脑环境变量的classpath是通用的,你不可能让你的所有项目都只是使用电脑环境变量classpath中设置的这几个类库吧)
       我觉得.classpath独立于电脑的classpath还有一个重要的原因:当你最后做成jar包提供给用户的时候,用户想要运行这个jar,你不能奢求用户的电脑中的classpath有你当前引用包的路径,因为用户的系统是干净的,所以我们需要把我们需要引用的包build到.classpath中

    三、内部命令、外部命令和批处理文件

         我们现在启动一个命令行窗口,按上述的方法把PATH的值全部清除,然后再运行dir、cd等命令。出乎我们意料的是,它们仍然能够正确执行。这,又是什么原因呢?

         我们来看看刚才那些报告错误的信息,它们都提到了“内部命令”和“外部命令”的概念。那么什么是内部命令和外部命令呢?

         内部命令和外部命令是DOS(disk operating system,微软早期基于命令行的操作系统)时代的概念,百度百科的解释是:内部命令是随每次启动的COMMAND_COM装入并常驻内存,而外部命令是一条单独的可执行文件。粗略地讲,所谓内部命令就是最核心、使用最多的命令。为了提高响应速度,系统一启动,这些命令就被加载到内存,因此可以迅速、直接地执行;而外部命令由于使用相对较少,就不预先加载到内存,当用户使用时,再到硬盘上(c:\windows\system32)找相应的可执行文件,然后加载到内存执行。像dir、cd等都是内部命令,而诸如attrib、format等都是外部命令。尽管DOS的时代早已成为了历史,但某些操作却必须在命令行模式下完成,对专业人士来说更是如此。因此,Windows产品一直保留着命令行模式这个工具。

         另外一个概念就是批处理文件(后缀名为.bat,来源于批量的英语单词batch),它是另外一种可以执行的文件。简单地说,批处理文件包含了很多DOS命令。文件执行时,就一条一条地执行这些命令。不一定顺序执行,像通用的程序设计语言一样,它也有自己的流程控制。批处理文件创建很简单:用任何一个文本编辑器(如Windows的记事本)创建一个文本文件,然后把后缀名改为.bat即可。创建好的批处理文件,你也可以用文本编辑器打开,查看它的“源代码”。

    三、关于CATALINA_HOME环境变量的设置(适用于tomcat6/7)

         Tomcat是一个免费开源的Servlet/JSP容器,深受广大JAVA初学者喜爱。这其中需要设置CATALINA_HOME环境变量,值为tomcat安装目录(我的是d:\tomcat7),否则会出现如下的错误信息:

       图十

         这句话的意思就是没有正确设置CATALINA_HOME环境变量,而此变量是运行Tomcat所必须的。而当你不理会这个信息,在命令行窗口把当前目录切换到tomcat安装目录下的bin目录下,再执行批处理文件startup.bat来启动tomcat时,发现也可以成功。难道现在不需要CATALINA_HOME环境变量了吗?

         实际上,在startup.bat中,首先判断CATALINA_HOME是否为空。若为空,就把当前目录设为CATALINA_HOME的值。然后查找CATALINA_HOME所指示的目录下是否有个bin目录,此bin目录下是否有个叫做catalina.bat的批处理文件(此文件负责启动tomcat)。若没有,则把当前目录的父目录设为CATALINA_HOME的值,再重复上述的查找。若仍失败,就报图十所示的错误。因此,当你在tomcat安装目录下的bin目录下运行startup.bat文件时,它就会按照上面所说的第二种方式自动正确设置CATALINA_HOME的值,因为catalina.bat文件就在tomcat安装目录下的bin目录里。

         虽然在此种情况下能正确运行,但还是建议你正确设置CATALINA_HOME环境变量。与PATH不同的是,PATH系统本身就由,而CATALINA_HOME需要你自己“新建”,在“环境变量”窗口点“新建”即可。

         为了能够在任何目录下都能运行tomcat安装目录下bin目录里的批处理文件,如startup.bat,可把此目录添加到PATH环境变量中(我的是d:\tomcat7\bin)。为了提高灵活性,可在PATH环境变量的最后添加上%catalina_home%\bin(与前一个值之间不要忘了用英文的分号隔开)。把catalina_home放置在两个百分号之间,表示引用这个环境变量的值。这样,当你把tomcat的安装目录换了以后,就只需要修改catalina_home的值,而不需要修改PATH的值了,因为它可以自动计算出新的正确值。

    展开全文
  • Ubuntu 更改环境变量 PATH

    千次阅读 2019-04-01 20:20:02
    1、什么环境变量(PATH) 在Linux中,在执行命令时,系统会按照PATH的设置,去每个PATH定义的路径下搜索执行文件,先搜索到的文件先执行。 我们知道查阅文件属性的指令ls 完整文件名:/bin/ls(这是绝对路径),...
  • Java环境变量PATH和CLASSPATH

    万次阅读 2016-03-28 23:28:57
    Java开发中常用到环境变量的配置,下面简单介绍下Java中经常配置的环境变量PATH和CLASSPATH。1、PATH环境变量1.1 作用简介安装完JDK(Java Development Kit,Java开发套件)之后,可以在安装目录下找到两个子目录...
  • 设置环境变量的目的 背景 在cmd中想要执行net start mysql等操作命令,必须先cd到bin文件所在目录,如D:\mysql\mysql-x.x.xx-winx64\bin,那么每次打开mysql 都要输入那么指令切换目录是不是讨厌?怎么弄呢? ...
  • termux 设置PATH环境变量

    千次阅读 2018-12-05 20:37:41
    先 echo $PATH 查看root的 环境变量 结果:/sbin/su:/su/bin:/su/xbin:/system/bin:/system/xbin 发现这三个全是根路径下的,没有/data/data/com.termux/files/usr/bin,自然执行不了这儿的命...
  • 环境变量Path过长问题

    千次阅读 2018-04-10 23:01:07
    新建一个系统变量取名path1,剪切Path中的所有变量复制进path1然后保存,将Path中全选删除改默认值 %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem; 最后在这个默认值后添加%p
  • 小知识:什么环境变量 Windows XP环境变量是提供给系统及用户应用程序使用的一些值,比如系统目录位置、临时文件目录等。 乌鸦口渴了,到处找水喝。终于,它找到了一个大水罐。水罐里的水并不,嘴够不到水面...
  • 很多人都会个疑惑:有些博客使用的是PATH、CLASSPATH和JAVA_HOME,但是有些博客又是 path、classpath 和 java_home ...而Linux操作系统是区分大小写的,设置PathPATH区别的,因此只需要设置PATH环境变量即可。
  • java环境变量path和classpath的配置

    千次阅读 2020-04-27 13:15:48
    在Java的学习中,涉及到两个系统环境变量path和classpath 一. path环境变量 path环境变量是系统环境变量的一种,它用于保存一系列的路径,每个路径之间用分号分隔。当在命令行窗口运行一个可执行文件时,操作系统...
  • Java的JAVA_HOME、Path、CLASSPATH环境变量小结

    万次阅读 多人点赞 2018-09-09 13:33:58
    刚学Java的时候,很多jdk配置教程都要求设置JAVA_HOME、Path、CLASSPATH3个变量。而Java官网这么一句话:jdk1.5之后的版本在安装时不用设置CLASSPATH变量。今天我就以jdk1.5例,总结下三者的区别。 Path 当...
  • 很多小伙伴在入坑时对环境变量不甚了解,导致写代码时,运行时,安装新的库时频频出错,而参考这篇博客可以帮助你更快掌握 cmd命令大家都清楚,但是很多小伙伴说在cmd命令下运行文件却与大佬们效果不同,大多是...
  • windows 下环境变量 path 详解

    万次阅读 多人点赞 2016-10-14 09:06:22
    在学习JAVA的过程中,涉及到环境变量(environment variable)的概念,如PATH。正确地配置这些环境变量,是能够顺利学习、开发的前提。而经常出现的问题是:的学习者能够按照提示一步一步地正确配置,但时间一...
  • 系统的环境变量path的作用是什么

    千次阅读 2015-03-23 12:33:26
    1. PATH环境变量。作用是指定命令搜索路径,在i命令行下面执行命令如javac编译java程序时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。我们需要把jdk安装目录下的bin目录增加到现有的PATH变量中...
  • 认识环境变量Path和Classpath的本质

    千次阅读 2014-06-17 17:39:03
    所以,后来每次编程需要设置环境变量时,都是临时上网搜怎么设置这个该死的“环境变量”,还好谷歌度娘一问就现成的操作方法。于是终于今天,我要使用WordNet进行开发时,再次碰到了“环境变量”。这一次,我决定...
  • 【系统相关】配置path环境变量打开软件

    千次阅读 热门讨论 2016-12-15 17:35:11
    通过配置path环境变量打开软件
  • 环境变量PATH中添加路径

    千次阅读 2017-11-01 10:32:27
    1.我们已经知道的是PATH是在终端执行命令的环境变量,bash会在PATH的路径中按名字搜索命令,只有能被搜索到的命令才会被执行.未搜索到的,将会报错:未找到命令. 2.今天我要做的就是向PATH中加入一个永久的...
  • 环境变量path被误删 解决方法

    千次阅读 2019-07-04 15:43:21
    查了很多资料,什么重启狂点按F8,什么改系统数据之类的,我都试过了。 狂点F8那个,如果不是Windows10系统,可以试试。 改系统数据那个,如果你能打开数据系统,可以试试。 和我一样,两种都不行的宝宝,试试我这个...
  • 【Windows】误删 Path 中的环境变量引发的惨案 昨天,在我安装数据库时,在 Path 系统变量中添加一条记录时,我错误的将 Path 系统变量覆盖了。等我修改完,就只剩我最近添加的那一条记录了。 当我在 cmd 中测试我...
  • LD_LIBRARY_PATH环境变量的设置

    千次阅读 2017-05-18 10:04:13
    在linux下的编程,毫无疑问的迟早都要用到LD_LIBRARY_PATH这个环境变量,不过这个环境变量是基于shell的,也就是说只有在当前设置了的shell里才会作用,因此每次打开新的shell运行程序不停地设置LD_LIBRARY_PATH,...
  • path环境变量的作用及配置方式

    千次阅读 2019-12-01 10:27:25
    在之前的博文《JDK的下载和安装 配图》中本人讲解了如何安装JDK,那么,在这篇博文中,本人来讲解一下:path环境变量的作用及配置方式 配置方式一: A:在JDK的bin目录下开发程序容易产生的问题 a:如果文件过多,...
  • sys.path(环境变量) 介绍 1. path[0] 2. 标准库 3. 第三方库 修改path 方法一:函数添加 方法二:添加.pth文件 方法三:修改环境变量 sys.path与init.py 更阅读 参考 sys.path(环境变量) 介绍 ...
  • python path研究(环境变量)

    万次阅读 2009-03-18 20:48:00
    python中的pythonpath是一个头大问题,... 要查看当前python环境下所有的pythonpath可以通过os.sys.path来查看,一般这个路径的来源以下几个方面 一.py文件的运行路径如果在py文件中不调用os.chdir的话,就一直
  • linux添加PATH环境变量和链接库目录

    千次阅读 2015-05-13 16:55:33
    添加PATH环境变量.添加连接库目录
  • path环境变量)是dos以前的内部命令,windows继续沿用至今。用作运行某个命令的时候,本地查找不到某个命令或文件,会到这个声明的目录中去查找。 因为java必须经过编译才能运行,编译就要通过常用命令比如:编译...
  • jdk环境变量的配置网上有很多,我们搜一下就出来了,但是我今天试了很多次一直不成功,但是尽到jdk的安装目录下面java和javac都是可以使用的,最后实在是没有办法,把系统变量中的Path变量删除,重新设置一下就好了...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 306,302
精华内容 122,520
关键字:

为什么path有很多环境变量