Java 计划';jshell';尝试在Ubuntu上运行jshell时,当前未安装
我已经下载并“手动”安装了JDK10 for Linux 64位版本(用于Ubuntu 16.04), (注意:我想下载java9jdk,但它不再受支持,我参考了java10se开发工具包) 当我尝试从终端窗口运行Java 计划';jshell';尝试在Ubuntu上运行jshell时,当前未安装,java,ubuntu-16.04,jshell,Java,Ubuntu 16.04,Jshell,我已经下载并“手动”安装了JDK10 for Linux 64位版本(用于Ubuntu 16.04), (注意:我想下载java9jdk,但它不再受支持,我参考了java10se开发工具包) 当我尝试从终端窗口运行jshell时,我得到以下错误: 当前未安装程序“jshell”。运行“jshell” 请让管理员安装该软件包 “openjdk-9-jdk-headless”您必须启用名为 “宇宙” 我不知道为什么当我安装了经典的java版本时,消息会要求我安装openjdk。当我运行“wh
jshell
时,我得到以下错误:
当前未安装程序“jshell”。运行“jshell”
请让管理员安装该软件包
“openjdk-9-jdk-headless”您必须启用名为
“宇宙”
我不知道为什么当我安装了经典的java版本时,消息会要求我安装openjdk。当我运行“which jshell”时,不会返回任何详细信息
有人能帮我安装并使用
jshell
吗?jshell
是一种开发工具。您应该下载并安装Java开发工具包以运行jshell
,而不仅仅是Java运行时环境。我遵循了Ernest Kiwele和上面其他人给出的提示,并按照中所述部分设置了我的Java\u主页
也可以通过在我的profile.d目录中创建一个sh
脚本。谢谢你的帮助
我对我的解决方案不太满意,因为我已经使用updatealternations
配置了Java。我不知道为什么人们建议使用updatealternations
来设置Java的版本,如果其他依赖变量没有同时设置的话
在Linux上,尤其是Ubuntu上,开发工具的最佳安装方式不是通过
apt
。证明该规则的例外情况是RVM
,它通过apt
安装,纯粹是为了在apt之外动态下载ruby和ruby gems
对于Java,等价物是SDKman
,它是通过curl
安装的。一旦拥有了SDKman
,就可以安装Java
和其他Java
类型工具
SDKman
正在运行:
thufir@dur:~$
thufir@dur:~$ sdk list java
================================================================================
Available Java Versions
================================================================================
12.ea.20-open
11.0.1-zulu
> * 11.0.1-open
10.0.2-zulu
10.0.2-open
9.0.7-zulu
9.0.4-open
* 8.0.192-zulu
8.0.191-oracle
7.0.201-zulu
6.0.119-zulu
1.0.0-rc-10-grl
1.0.0-rc-9-grl
1.0.0-rc-8-grl
================================================================================
+ - local version
* - installed
> - currently in use
================================================================================
thufir@dur:~$
通常,umake
或ubuntumake
将安装IDE
或其他开发工具。目前,umake
最好作为snap
安装
结果是首先安装SDKman
,然后安装snap
,然后使用snap
安装umake
。在umake
和SDKman
之间,您的工具应该是最新的
(Ruby使用了一个类似的
RVM
,它启发了SDKman)我确实有这个功能-如果你查看我上面发布的链接,你可以看到我下载的内容。我刚刚检查了“bin”目录,可以看到其中包含“jshell”。@robbie70那么在PATH中包含/bin如何?@robbie70那么您的PATH
变量包含JRE安装的bin
目录。您必须更改它的值以指向JDK的bin目录。Eugene/Ernest-我的路径中没有包含java。相反,我使用了updatealternations
来配置我的java版本。然后必须在那里进行更改。检查:根据您的第二个屏幕截图,JShell似乎安装正确。您是否尝试使用/JShell
在该文件夹中运行JShell?如果它有效,问题只是路径配置。谢谢Mincong-我刚刚试过,是的,它有效!我有点困惑,如果我使用“更新替代方案”来配置我的java版本——这是否只公开我配置的文件,即“java”和“javac”?为了访问bin
目录中的所有其他文件,我是否需要将java“bin”目录显式地添加到我的路径中?对不起,我不知道更新替代方案,也不使用Linux。。。我会让其他人在这方面帮助你。唯一可以确定的是,JDK的bin
文件夹必须存在于您的路径中,这样您就可以直接调用jshell