该计划' jshell'尝试在Ubuntu上运行jshell时,当前未安装

时间:2018-05-10 10:04:21

标签: java ubuntu-16.04 jshell

我已经下载了"手动"为Linux 64bit版安装了JDK 10(适用于Ubuntu 16.04), Oracle Java SE Development Kit (注意:我想下载Java9 JDK,但不再支持它,而是转而使用Java 10 SE开发工具包)。

当我尝试从终端窗口运行jshell时,我收到以下错误,

  

该计划' jshell'目前尚未安装。运行' jshell'   请让您的管理员安装该软件包   '的openjdk -9- JDK-无头'您必须启用名为的组件   '宇宙'

enter image description here

enter image description here

enter image description here

enter image description here

我不知道为什么当我安装了经典的java版本时,该消息要求我安装openjdk。当我跑步时,#jshell"我没有得到任何细节。

任何人都可以帮我安装和使用jshell吗?

3 个答案:

答案 0 :(得分:2)

JShell是一种开发工具。您应下载并安装 Java Development Kit 以运行jshell,而不仅仅是Java Runtime Environment。

答案 1 :(得分:0)

我按照上面的Ernest Kiwele和其他人给出的提示,将我的JAVA_HOME部分设置为 How to set JAVA_HOME in Linux for all users 但也可以在我的profile.d目录中创建一个update-alternatives脚本。谢谢你的帮助。

enter image description here

因为我使用update-alternatives配置了Java,所以我对我的解决方案感到不自在。我不知道为什么人们建议使用 [LuisIntent("aa")] [LuisIntent("bb")] public async Task AaIntentSpecified(IDialogContext context, LuisResult result) { } [LuisIntent("")] public async Task IntentNotSpecified(IDialogContext context, LuisResult result) { } 设置要使用的Java版本,如果其他依赖变量没有同时设置。

enter image description here

答案 2 :(得分:0)

在Linux(尤其是Ubuntu)上,最好不要通过apt安装开发工具。证明规则的例外是RVM,它是纯粹通过apt安装的,因此它将在apt之外动态下载ruby和ruby gem。

对于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:~$ 

通常,umakeUbuntu Make将安装IDE或其他开发工具。当前,最好将umake安装为snap

结果是首先安装SDKman,然后安装snap,然后使用snap安装umake。在umakeSDKman之间,您的工具应该是最新的。

(Ruby使用了类似的RVM,启发了SDKman。)