从 CentOS 7 终端调用 java 程序

calling a java program from CentOS 7 terminal

我正在使用 the code from this tutorial 来测试 JDBC 连接。我将 class 的名称更改为 TestJDBC 并更改了数据库名称和查询,但其他方面是相同的。当我 运行 class 作为 Java 应用程序从我的 devbox 上的 eclipse 中时,程序 运行 正确。但是,当我将文件复制到远程 CentOS 7 服务器上的 /home/username/ 时,在终端中键入 java TestJDBC.java 会产生以下错误:

Error: Could not find or load main class TestJDBC.java

我在尝试 java TestJDBC 时以及上传 .class 文件和 .java 文件时也出现了同样的错误。 我还需要做什么才能从 CentOS 7 终端调用 Java class?

请注意 javac TestJDBC.java 结果为 -bash: javac: command not found。我确实尝试了 java somepackage.TestJDBC,结果与上面的 Error: Could not find or load main class TestJDBC.java 相同。

答案注意:答案需要使用 yum 获取 openJDK 的开发版本。 PATH 变量不是解决方案的一部分。 但是,我将下面的答案标记为已接受,因为提交它的用户对解决方案做出了重大贡献。

编译后你应该可以运行它

javac TestJDBC.java
java TestJDBC

请注意,当从命令行 运行 启用它时,您不需要添加 .class

如果这仍然不起作用,请粘贴您的代码。

请求后编辑

所以您现在声明您的 PATH 中缺少 javac。我将向您展示如何添加它:

$> export JAVA_HOME=/path/to/jdk/jdk.1.8.0_20
$> export PATH=$PATH:$JAVA_HOME/bin

通过 运行ning

验证
javac -version

它应该打印类似

的内容
javac 1.8.0_20