我的 10.04 服务器上的 java 控制台有一些奇怪的问题(它实际上是 Minecraft 服务器的控制台,但我相信这是一个普遍问题,而不是 Minecraft 特定的问题):箭头键无法正确识别。每当它们在 java 控制台中使用时,它们都会生成如下内容:
^[[A ^[[B ^[[C ^[[D
Run Code Online (Sandbox Code Playgroud)
不过,它们在系统的其余部分上运行良好。
我已经尝试过一些事情,例如检查系统区域设置或仅为 java 设置特定区域设置,但没有任何运气。任何想法背后的原因是什么以及如何解决它?
提前致谢。
编辑(10 月 29 日): 在阅读第一个答案并测试了几件事后,我对这个问题有了更多的了解。现在有程序在 shell 之上运行,问题主要是由 java 应用程序(或更具体地说,它的控制台)使用的 java jline 库的问题引起的。
出于测试目的,我从 OpenJDK6 切换到 OrcaleJDK6,问题就消失了。无法测试 OpenJDK7,因为没有 10.04 的版本。我假设与 jline 有一些连接,因为这是负责处理控制台输出和输入的库。应用程序使用的版本可能与服务器上使用的旧 OpenJDK 版本不兼容。但与我手动安装的最新版本的oracle-java兼容。我仍然没有弄清楚 ubuntu 的 jline-package 如何适应这张图片。对我来说,使用和不使用它进行测试没有区别。
如果我弄清楚了什么,我会再次编辑这篇文章。如果有人有想法,请告诉我。
您好,我有大约 20 个视频文件,是从在线教程网站购买的。
在介绍性教程中,他们说您可以使用守护程序工具播放 .bin 文件。
但是Linux呢?守护进程工具不适用于 Linux,那么我该怎么办?他们有播放 .bin 文件的等效或替代方式吗?
此外,这些 bin 在安装后将在使用 ActiveX 内容的浏览器中打开。是否可以在 Firefox 中使用 Java 来实现这一点?
可执行文件(构建的程序和 shell 脚本)通常位于 /bin 或 /usr/bin 中,但是 jar 文件呢?这是一个“程序”,让我认为它应该放入 bin 中,但另一方面它需要一个脚本来启动它。
我有一个非常简单的脚本来启动 jar。
java -jar myapp.jar
Run Code Online (Sandbox Code Playgroud)
但是我应该把 jar 文件放在哪里呢?
在最新更新后,Ubuntu我发现它使用了大量的RAM. 我已经使用了8 GB of ram,并且从上周开始 Ubuntu 就开始使用它了。
我也使用了Android studio,之后2 hours,我的系统ram已满,并且很多swap正在使用中。一切都变得迟缓。我尝试优化内存使用,Android studio and Java但仍然没有帮助。下图显示了我的系统运行后的状态45 minutes of use。现在我到底该如何找到导致这种情况的进程呢?我想报告错误,但我需要先找出第一个错误problematic process。
Ubuntu 16.04(64 bit)
Ram: 8 GB
kernel: 4.4.0-24-generic
Run Code Online (Sandbox Code Playgroud)
根据system monitor我可以看到所有进程都在使用3.8 GB内存,其他使用其他3 GB内存的进程在哪里?
操作系统:Ubuntu 18.04
\n\n我之前已经安装了 Oracle Java 8。但决定切换到 open JDK 11。\nit\ 已成功安装。\n java -version
\nopenjdk 版本“11.0.2”2019-01-15\nOpenJDK 运行时环境(内部版本 11.0.2+9-Ubuntu-3ubuntu118 .04.3)\nOpenJDK 64位服务器虚拟机(内部版本11.0.2+9-Ubuntu-3ubuntu118.04.3,混合模式,共享)
然后我设置 JAVA_HOME\n sudo nano /etc/environment \n文件更改:\nPATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin :/usr/games:/$\nJAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64/"
\n\n然后执行:\nsource /etc/environment
\n\n回声 $JAVA_HOME
\n/usr/lib/jvm/java-11-openjdk-amd64/
但是当我退出终端然后再次启动终端时: \n我得到以下输出:
\n\n\xe2\x96\xb6 echo $JAVA_HOME\n/usr/lib/jvm/java-8-oracle
\n\n您可以看到这不是预期的结果。\n请帮助我
\njava jdk environment-variables openjdk software-installation
我通过执行以下操作添加了一个回购:
add-apt-repository ppa:webupd8team/java
apt-get install oracle-java8-installer
Run Code Online (Sandbox Code Playgroud)
输出:
Package 'oracle-java8-installer' has no installation candidate
Run Code Online (Sandbox Code Playgroud) 我有一个ubuntu虚拟机,我不小心安装了jdk 11,但我想安装jdk 8,然后像这样设置环境变量。
#in the .bashrc file if want to add the following lines
export JAVA_HOME=~/java/jdk1.8.0_161
export PATH=$JAVA_HOME/bin:$PATH
export SPTARGET=sandbox
Run Code Online (Sandbox Code Playgroud)
问题是我没有安装jdk,我是直接从命令行安装的
sudo apt install default-jre
每当我检查版本时
$ java -version
输出:
openjdk version "11.0.3" 2019-04-16
有谁知道我如何删除这个java版本,然后手动添加java jdk环境变量?
我已经为 JDK 下载了一个 .bin 文件并正在尝试安装它。我使用过这些命令:
chmod +x jdk-6u23-linux-i586.bin
sudo ./jdk-6u23-linux-i586.bin
Run Code Online (Sandbox Code Playgroud)
并得到这个输出:
sudo: ./jdk-6u23-linux-i586.bin: command not found
Run Code Online (Sandbox Code Playgroud) 当我尝试运行一个简单的 Hello World 程序时,我不断收到一条消息说Could not find the main class.
我在 Ubuntu 论坛上找到了这个帖子,它表明我的CLASSPATH变量搞砸了,但我找不到修复它的方法。
我究竟做错了什么?