【问题标题】:How do I configure Oracle Java JDK 7 (not Open JDK) correctly on Ubuntu 11.10 and run a Java Program with referenced JAR files?如何在 Ubuntu 11.10 上正确配置 Oracle Java JDK 7(不是 Open JDK)并使用引用的 JAR 文件运行 Java 程序?
【发布时间】:2012-05-09 23:48:34
【问题描述】:

我在这里可能有多个问题,但最终我正在尝试编译和运行一个引用 3rd 方 JAR 文件(在 Ubuntu Linux 上)的 Java 程序,所以我认为将其保留为一个问题是合适的。

我正在尝试正确安装和配置 Java JDK 7,以便在 Ubuntu Linux 上运行一个简单的程序。我想从专家那里得到指导,至少可以帮助我从命令行运行一个简单的 Java 程序(也许是“Hello World”应用程序?)。我过去只在 Windows 上编译和运行 Java 程序,所以这对我来说是新的。昨晚,我读到你必须小心不要安装 Open JDK,而要安装 Oracle JDK。安装操作系统时,Ubuntu 11.10 似乎会为您安装 Java Open JDK。

我运行的是 32 位 Ubuntu,而不是 64 位。所以我下载了这个 Linux JDK 文件:
jdk-7u4-linux-i586.tar.gz

我将 tarball 解压到 /usr/java 中,然后删除 *.gz 文件以节省磁盘空间。有些教程说要安装到 /usr/java 中,有些说要安装到 /usr/lib/jvm 中,所以我只选择了一个并使用它。如果您对适当的安装目录有任何建议,请告诉我您的建议。

然后,我使用“java -version”命令检查了安装的 Java 版本(如下)。它没有找到 Oracle JDK。

(1)为什么命令没有列出我刚安装的Oracle JDK包?

mac@UBUNTU:/usr/lib$ java -version
The program 'java' can be found in the following packages:
 * gcj-4.4-jre-headless
 * gcj-4.6-jre-headless
 * openjdk-6-jre-headless
 * gcj-4.5-jre-headless
 * openjdk-7-jre-headless
Try: sudo apt-get install <selected package>
mac@UBUNTU:/usr/lib$ 

(2)您能帮我完成配置这台 Linux 机器以编译 Java 程序的必要步骤(完成我刚刚开始的工作)吗?

(3)您能帮我完成编译 *.java 文件以创建 *.class 文件的步骤吗?

(4)您能帮我运行一下我们刚刚编译的 Java 程序吗?

(5) 假设我想在我的 Java 程序中包含多个 *.jar 文件(第 3 方程序集)。如果这些文件不在运行引用它们的 Java 程序的目录中,Java 怎么知道在 Linux 上哪里可以找到这些文件? (我只熟悉 Windows 中的 CLASSPATH)

【问题讨论】:

标签: linux jar compilation java


【解决方案1】:
  1. Ubuntu 基于 Debian 及其 apt-get 实用程序。 apt-get 将仅列出已知的软件包。您安装的只是系统上的一个文件夹,apt-get 甚至都不知道它。
  2. 看起来java 不在您的路径上。因此,要么在路径的其中一个文件夹中创建指向 java 二进制文件的符号链接(键入 env 以查看路径变量中的内容),要么将 JDK bin 目录添加到路径中(参见命令 export) .作为最后的手段,您可以键入 java 二进制文件的绝对路径,但这很痛苦。
  3. 要编译,您只需使用 javac(Java 编译器)。例如javac Test.java。确保 javac 也在你的路径上(或使用 java 编译器的绝对路径)
  4. 要运行它,请输入java -cp . Test(如果您将它放在包中,请不要忘记输入您的类的完全限定名,这是推荐的)
  5. 在编译或运行时,使用参数 -cp,后跟要使用的 jar 列表(在 Linux 上用“:”分隔,在 Windows 上用“;”分隔)。您可以在类路径中使用通配符(如 lib/*.jar),但您可能还必须转义通配符以避免 shell 扩展(如 lib/\*.jar)。

【讨论】:

  • 通过包管理安装 oracle jdk 的一种可能方法是通过 apt 将其打包为 deb 进行安装。见wiki.debian.org/JavaPackage
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-28
  • 2015-05-08
  • 1970-01-01
  • 2017-08-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多