gpt4 book ai didi

java - 如何使用 javac 从 .jar 导入来编译 .java 文件?

转载 作者:行者123 更新时间:2023-12-02 21:14:36 27 4
gpt4 key购买 nike

我需要编译一个 .java 文件,该文件从 .jar 文件导入类,而不需要反编译 .jar。 Javac 在编译时出现错误,因为它找不到我想要导入的类的源代码。我不想仅仅为了获取导入的源代码而反编译 .jar。我可以做什么来编译它们?

最佳答案

我将对你在这里的意思做出一些假设。首先,我假设你想做的事情是有意义的,尽管它写得不是特别清楚。这个假设和您的评论使我相信您在某处有一个 .java 文件,它有一些导入语句,并且某些(或全部)导入的类来自此 .jar 文件。

这通常不是问题。您通常不需要 java.util.HashMap 的源代码即可在您自己的代码中使用它。您所要做的就是确保 java 编译器可以看到您正在导入的类的 .class 文件,并且它可以正常工作。

现在这个问题简化为:“如何在类路径上获取 .jar 文件以便 javac 能够使用它?”假设这个 .jar 文件名为 myjar.jar,您的类名为 myclass.java。 ...

在 Unix 或 Windows 系统上,您可以在命令 shell 中键入

javac -classpath myjar.jar myclass.java

如果这些文件不在当前目录中,您必须提供它们的路径。

还有其他方法可以做到这一点:CLASSPATH 环境变量(Oracle 似乎不喜欢该变量),或者使用 Eclipse 或 NetBeans 等 IDE。如果您需要有关这些内容的更多信息,请告诉我们。

您可以查看http://docs.oracle.com/javase/8/docs/technotes/tools/unix/classpath.html#CBHHCGFB (对于 UNIX 系统)或 http://docs.oracle.com/javase/8/docs/technotes/tools/windows/classpath.html#CBHHCGFB (适用于 Windows 系统)了解更多信息。不要忽视http://docs.oracle.com/javase/8/作为有关许多 Java 主题的更多信息的资源。

关于java - 如何使用 javac 从 .jar 导入来编译 .java 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31495263/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com