考虑到可能有些人安装了jdk,但是没有设置环境变量,
有没有办法用一个bat文件来搜索系统中安装的jdk的
位置并设置成环境变量?

解决方案 »

  1.   

    我以前也有找过这样的文字,也有研究过,呵呵,把我收藏的一篇贴给你,希望能对lz 有帮助
    @echo off 
    @USAGE: runbat D:\jdev1012_base\jdk
    IF EXIST %1\bin\java.exe ( 
    rem 如输入正确的 Java2SDK 安装目录,开始设置环境变量 @set JAVA_HOME %1 @set path %path%;%JAVA_HOME%\bin @set classpath %classpath%;. @set classpath %classpath%;%JAVA_HOME%\lib\tools.jar @set classpath %classpath%;%JAVA_HOME%\lib\dt.jar @set classpath %classpath%;%JAVA_HOME%\jre\lib\rt.jar @echo on @echo Java 2 SDK 环境参数设置完毕,正常退出。 ) ELSE ( IF "%1"=="" ( rem 如没有提供安装目录,提示之后退出 @echo on @echo 没有提供 Java2SDK 的安装目录,不做任何设置,现在退出环境变量设置。 ) ELSE ( rem 如果提供非空的安装目录但没有bin\java.exe,则指定的目录为错误的目录 @echo on @echo 非法的 Java2SDK 的安装目录,不做任何设置,现在退出环境变量设置。 ) )  
      

  2.   

    谢谢楼上!!
    linux下提供了find命令,不知道bat中有没有find命令
    或者类似的命令
      

  3.   

    bat中的查询可以用exist比如我想查找d盘的1.txt文件if exist d:\1.txt
      

  4.   

    lz 我给你找了一篇文章,写的不错,主要讨论bat命令的有时间你可以去看一看http://hi.baidu.com/vanciki/blog/item/77b34aed155eb9d4b31cb151.html
      

  5.   

    有一个办法可以在windows下搜索,但是可能不是最优的dir /s c: | find "java.exe"
      

  6.   

    @echo off
    Set Path=%RamDRV%\jdk1.5\bin
    If NOT Exist %Path% GOTO ERR1
    set path=%Path%
    ECHO.
    ECHO 环境变量设置完毕,请按任意键退出程序...
    pause
    EXIT
    :ERR1
    echo 本机没有安装jdk
    pause
    试一试吧,也许能用得着