Abh*_*ram 13 java bash windows-subsystem-for-linux windows-10-v1703
我无法从 BashOnWindows10 运行 Windows 版本的 java.exe。它存在于 PATH 中,但调用失败了。我的目标是避免在 WSL 中再次安装 JDK/JRE。当我运行 Creator 的更新时,我期待能够调用任何 Windows 应用程序。任何想法为什么会发生这种情况?但是,我能够成功启动 Python 的 Windows 安装。
猛击
username@PC:~$ which java.exe
/mnt/c/ProgramData/Oracle/Java/javapath/java.exe
username@PC:~$ java.exe
username@PC:~$ <<<nothing happens
username@PC:~$ which python.exe
/mnt/c/Python34/python.exe
username@PC:~$ python.exe
Unable to translate current working directory. Using C:\WINDOWS\system32
Python 3.4.0 (v3.4.0:04f714765c13, Mar 16 2014, 19:25:23) [MSC v.1600 64 bit
(AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
Run Code Online (Sandbox Code Playgroud)
命令行工具
C:\Users\username>java -version
java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)
Run Code Online (Sandbox Code Playgroud)
小智 11
下面是我如何让 Java 为我的 WSL 安装“正常工作”。
ln -s /mnt/c/Program\ Files\ \(x86\)/Java/jre1.8.0_151/bin/java.exe /bin/java
Run Code Online (Sandbox Code Playgroud)
这样做是在您的/bin文件夹中创建一个指向Windows Java 二进制文件的符号链接。每当 WSL 现在尝试调用 Java 时,它都会被重定向到 Windows 版本。您可能需要随着 Java 版本未来的变化而调整路径。
此问题是因为 WSL 在 Creator 更新中不支持 Windows 快捷方式。/mnt/c/ProgramData/Oracle/Java/javapath/java.exe实际上是我的实际安装目录的快捷方式C:\Program Files\Java\jre1.8.0_31\bin。从实际安装路径调用java似乎可以按预期工作。
| 归档时间: |
|
| 查看次数: |
17553 次 |
| 最近记录: |