为什么 classpath=/tomcat_lib/ 不起作用

发布于 2024-11-05 00:06:19 字数 307 浏览 1 评论 0原文

大家好,

/tomcat_lib 下有一个 abc.jar。我需要在我的 def.java 中使用这个

我累了

javac -classpath /tomcat_lib/ -d ../classes def.java

但它不起作用

但是如果我使用它它会起作用

javac-类路径/tomcat_lib/abc.jar -d ....

任何人都可以帮忙解释一下吗?

HI guys,

There is an abc.jar under /tomcat_lib. I need use this in my def.java

I tired

javac -classpath /tomcat_lib/ -d
../classes def.java

but it doesn't work

But if it works if I use

javac -classpath /tomcat_lib/abc.jar
-d ....

Can anyone help explain it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

锦爱 2024-11-12 00:06:19

要将 jar 添加到类路径中,您需要指定包含 .jar 文件的路径。

引用 Oracle.com 上的官方 Java SE 6 文档:

每个[类路径中的项目]应该
以文件名或目录结尾
取决于您的设置
类路径:

  • 对于 .jar 或 .zip 文件
    包含 .class 文件,该类
    路径以 .zip 的名称结尾或
    .jar 文件。
  • 对于 .class 文件
    未命名包,类路径结束
    与包含的目录
    .class 文件。
  • 对于 .class 文件
    命名包,类路径结束
    与包含的目录
    “root”包(第一个包
    完整的包名称)。

...以及来自 相同的文档

当类存储在目录中时
(文件夹),例如
c:\java\MyClasses\utility\myapp,然后
类路径入口指向
包含第一个的目录
包名称的元素。 (在这个
情况下,C:\java\MyClasses,因为
包名称是 utility.myapp。)

但是当类存储在
存档文件(.zip 或 .jar 文件)
类路径条目是 和 的路径
包括 .zip 或 .jar 文件。

To add a jar to your classpath, you need to specify the path up to and including the .jar file.

Quoting the official Java SE 6 documentation at Oracle.com:

Each [item in your classpath] should
end with a filename or directory
depending on what you are setting the
class path to:

  • For a .jar or .zip file
    that contains .class files, the class
    path ends with the name of the .zip or
    .jar file.
  • For .class files in an
    unnamed package, the class path ends
    with the directory that contains the
    .class files.
  • For .class files in a
    named package, the class path ends
    with the directory that contains the
    "root" package (the first package in
    the full package name).

...and from the "Folders and Archive Files" section of the same documentation:

When classes are stored in a directory
(folder), like
c:\java\MyClasses\utility\myapp, then
the class path entry points to the
directory that contains the first
element of the package name. (in this
case, C:\java\MyClasses, since the
package name is utility.myapp.)

But when classes are stored in an
archive file (a .zip or .jar file) the
class path entry is the path to and
including the .zip or .jar file.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文