Java not recognized on PowerShell

前端 未结 3 1039
梦谈多话
梦谈多话 2021-01-19 01:36

I\'m using PowerShell on Windows 2012 server, and I deleted all the java commands from System32, reinstalled jdk, set JAVA_HOME and Path to point at the new installation. An

3条回答
  •  再見小時候
    2021-01-19 02:34

    I deleted all the java commands from System32

    This is why Windows can't find java.exe. The default JRE installation puts Java into your System32 directory, which is where CMD and Powershell usually find it.

    You can fix this for your system by running the following from an admin shell. This creates a copy of java.exe in your Windows directory. (You can also probably get away with a soft link)

    fsutil hardlink create (join-path $env:SystemRoot 'java.exe') (join-path $env:JAVA_HOME 'bin\java.exe')
    

    If you don't want to modify your Windows directory (or can't), you can always set an alias to use in your Powershell session.

    Set-Alias -Name java -Value (Join-Path $env:JAVA_HOME 'bin\java.exe')
    

    Run that line in your current session and running java from the command line should work correctly. Add it to your $PROFILE if you want it to work from all future Powershell sessions.

提交回复
热议问题