【问题标题】:How do I add jar files to the Classpath? [closed]如何将 jar 文件添加到类路径? [关闭]
【发布时间】:2012-05-10 08:10:40
【问题描述】:

我在Windows 上,我尝试了javac 下的-classpath,但无济于事。还尝试将 jar 移动到 src 目录,但 java 文件仍然无法编译。尝试在脚本中简单地导入 httpclient。

   import org.apache.http.client.*;

【问题讨论】:

  • 发布您添加到类路径和目录结构的内容。否则,我们无法为您提供帮助。
  • 能否提供更多信息,例如整个 javac 命令、源/lib 组织等?
  • 您真的要向 JDK 添加 jar 包吗?也许你的意思是编译类路径?
  • “尝试了javac下的-classpath无济于事。” 那么你的问题应该是“如何使javac下的-classpath工作?”。 不要向 JRE(或 JDK)添加第 3 方 Jars。
  • 没有理由将jar移动到src目录下,因为你不是在编译jar,你是用它来编译.java文件,这些文件确实在src目录下。缺失的类究竟是什么?你确定它在你使用的罐子里吗?可能是那个 jar 的依赖项

标签: java jar classpath


【解决方案1】:

-classpath 命令行参数(javajavac)期望您将列出特定的 JAR 文件(和/或包含类文件的“分解”目录)。这与仅列出包含可执行文件的目录的 Windows/UNIX PATH 环境变量不同。

例如,如果您想编译依赖于lib/bar.jarcom.example.Foo,您可以使用以下咒语:

javac -classpath lib/bar.jar com/example/Foo.java

但我的猜测是,您还会收到特定的错误消息,并且知道该错误消息将有助于进一步帮助您。

【讨论】:

  • 使用 httpclient-4.0.1.jar。无论我如何在类路径中链接它,我的 java 文件都不会编译。我没有收到所有与 java 无法找到包相关的符号错误。我想知道我的 java 文件中的导入语法是否需要反映我正在使用的包不是 jdk 安装的一部分?
  • 但是你还没有说你的错误信息是什么。 “当我运行 javac ... 时,我收到以下错误:whatever”。如果您没有收到任何错误,那么就没有任何问题...除非您期待不同的东西(在这种情况下:您希望看到什么但没有看到?)
  • 我的 java 文件中从 httpclient.jar 引用的任何类都没有出现符号错误。例如,“找不到符号,类 defaulthttpclient()”
  • 如果您没有收到任何错误,那么听起来它正在工作。是什么让您认为它不起作用?
  • 请编辑您的问题并将您的整个控制台交互粘贴到那里。我们需要查看您的完整命令行(您输入的内容)以及javac 打印到控制台的所有输出。
【解决方案2】:
  1. 安装 JDK 并别管它不要将 .jar 文件复制到 JDK 文件夹中!

  2. 如果您还没有 IDE,我建议您购买 Eclipse 或 Netbeans。

  3. 我会设置一个新项目,创建或导入您的源代码,并为该项目设置一个类路径。

  4. 如果这不起作用,请告诉我们:

    a) 您的操作系统和版本

    b) 你的 JDK 和版本

    c) 你的 IDE

    d) 剪切/粘贴 EXACT 错误消息

    e) 剪切/粘贴相关代码

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-28
    • 1970-01-01
    • 2018-11-07
    • 2015-09-27
    • 2013-08-27
    相关资源
    最近更新 更多