java8与java7_正确安装Java 8和Java 7

小编典典

问题是Java 8安装了许多您实际上不需要的东西:

\ windows \ system32 包含Java 8 java.exe,javaw.exe 和 javaws.exe 。您的路径可能在开头附近有 system32 ,因此默认情况下倾向于运行它们。

系统路径变量以 C:\ programdata \ Oracle \ Java \ javapath开头 。该文件夹包含 java.exe , javaw.exe 和 javaws.exe, 作为指向JRE 8可执行文件的符号链接。

我已经删除了 system32 文件,并从系统路径中删除了 C:\ programdata \ Oracle \ Java \

javapath 。这似乎可以解决问题。现在,我可以通过将 JAVA_HOME 和 PATH 指向相应的文件夹来切换版本。

看来,Oracle决心要使其难以运行多个版本。这对于JRE是可以理解的,但是对于JDK却是疯狂的,因为开发人员几乎总是需要多个Java版本。

编辑:我发现此批处理脚本对于切换JDK很有用。用法:jdk.bat 6 | 7 | 8。您可能必须编辑Java的安装位置。

@echo off

if "%1"=="" goto report

set _version=%1

shift

if "%1"=="DBG" shift & echo on

set _command=%1 %2 %3 %4 %5

set _jdkdir=

set _jdkver=

for /D %%f in ("C:\Program Files\java\"jdk1.%_version%.*) do call :found "%%f"

if "%_jdkdir%"=="" goto notfound

set java_home=C:\Program Files\java\%_jdkdir%

call :javapath

path %new_path%

goto :report

:javapath

setlocal enabledelayedexpansion

set _jdirs=

for /D %%j in ("C:\Program Files\java\*") do set _jdirs=!_jdirs!#%%~fj\bin

set _jdirs=%_jdirs%#

set _javabin=%java_home%\bin

set _fpath="%PATH:;=" "%"

call :checkpath %_fpath%

endlocal & set new_path=%_javabin%

goto :eof

:checkpath

if _%1==_ goto :eof

echo %_jdirs% | find /i "#%~1#" 1>nul 2>&1

set _err=%errorlevel%

if not %_err%==0 set _javabin=%_javabin%;%~1

if %_err%==0 echo Removed %~1 from path

shift

goto :checkpath

:report

javac -version

%_command%

goto :eof

:notfound

echo No JDK matching [C:\Program Files\java\jdk1.%_version%.*] found.

goto :eof

:found

set _jdkdir=%~n1%~x1

for /F "tokens=2,3 delims=." %%a in ("%_jdkdir%") do set _jdkver=1.%%a.%%b

goto :eof

2020-09-23

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值