当我尝试使用javac
编译java程序时,出现错误:
The program 'javac' can be found in the following packages:
* default-jdk
* ecj
* gcj-4.6-jdk
* gcj-4.7-jdk
* openjdk-7-jdk
* openjdk-6-jdk
Try: sudo apt-get install <selected package
当我尝试java -version时,它说,
java version "1.7.0_21"
OpenJDK Runtime Environment (IcedTea 2.3.9) (7u21-2.3.9-1ubuntu1)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)
当我尝试使用哪个java /usr/bin/java
如何从命令行编译我的java程序?
答案 0 :(得分:27)
如@Blorgbeard所述,您很可能没有安装Java JDK(Java Development Kit)。有关可用于Ubuntu的各种Java版本的更多信息,请参阅this web page。
以下命令将安装Java JDK的OpenJDK版本:
apt-get install default-jdk
答案 1 :(得分:4)
我有Ubuntu 12.10,java“1.6.0_27”,这个命令使javac可用:
sudo apt-get install default-jdk
然后像这样编译:
el@apollo:~/retreat3$ javac HelloWorld.java
el@apollo:~/retreat3$ java HelloWorld
Hello, World!
答案 2 :(得分:3)
我遇到了同样的问题。我使用了以下命令
sudo apt-get install openjdk-7-jdk
之后编译的应用程序。不确定上述解决方案有何不同。也许我不必指定版本。
答案 3 :(得分:1)
实际上,java命令可以在我的ubuntu 16.04上运行,但不能在javac上运行。 一开始,我摆弄环境路径,因为我以为我已经安装了所有Java软件包,所以问题在于设置环境路径变量。
然后我尝试了命令update-alternatives --list java
它返回了一条路径,但是update-alternatives --list javac
没有返回。
这向我说明,需要安装javac,因此我运行了sudo apt-get install default-jdk
但是,如果您在运行update-alternatives --list javac
时遇到了麻烦,那么我建议您应该尝试设置$ JAVA_PATH或创建符号链接。可以在unable to run javac on Ubuntu页面上找到有关此内容的帮助。
答案 4 :(得分:0)
只需在您的终端上复制并粘贴
sudo apt install openjdk-8-jdk-headless
答案 5 :(得分:0)
在我的情况下,我安装了JDK,但我手动安装它,因此它没有添加到路径中。一旦我将这些行添加到我的.zshrc文件中(我使用zsh;如果你正在使用bash,将它们添加到.bash_profile)并重新启动终端,它就可以了:
(?:\\left\()?
答案 6 :(得分:0)
遇到了同样的问题。通过使用 Yum 安装 OpenJDK 8 修复:
sudo yum install java-1.8.0-openjdk-devel
答案 7 :(得分:-1)
是的,这也适用于Linux Mint(Linux版本3.16.0-38-generic | gcc版本4.8.2(Ubuntu 4.8.2-19ubuntu1))!!!!
如果没有尝试安装这些包: * default-jdk * ecj * gcj-4.8-jdk * openjdk-6-jdk
它应该有用!