7

我正在编写一些 clojure 代码,并且我依靠 Joda 时间来处理时间。问题是我不知道要导入什么,文档也不是很清楚。现在我知道这里有人可能会在不到 5 秒的时间内给我正确的答案,但我宁愿知道如何自己解决这个问题(除了翻阅文档直到找到正确答案)。

如果我在 Python 中执行此操作,我将导入顶级包并使用 和 的组合dirhelp确定我需要导入的内容。有没有办法在clojure中做到这一点?或者有没有其他类型的java工具来解决这个问题?我更喜欢面向命令行的东西。

4

4 回答 4

8

通常我会选择 David Grant 的答案,但如果你找不到任何 JavaDoc (!),但你有一个 jar 文件,你可以使用 jar 实用程序列出 jar 中的文件。

类文件所在的目录直接映射到其包名。例如,jar -tf joda-time-1.6.jar | more将 DateTime.class 列为org/joda/time/DateTime.class; 日期时间在org.joda.time包中。

于 2010-02-05T16:01:52.793 回答
3

dir与检查 Python 中的包文档的方式相同,help可以通过阅读特定 API 的 Javadocs 来收集 Java 中的有用信息。在 Joda Time 的情况下,该网站有一个指向生成文档的直接链接,在这里:

http://joda-time.sourceforge.net/api-release/index.html(见左下框)

我想不出任何与您所要求的内容直接可比的东西,因为除非您向类加载器询问特定类,否则类加载器不会加载它,您将无法找到它。

于 2010-02-05T15:56:44.067 回答
1

Bill Clementson 编写了一小段代码,可帮助您查看 REPL 中的 javadoc 文档。

于 2010-02-05T18:56:02.327 回答
0

http://dishevelled.net/Generating-Clojure-import-lines-using-SLIME.html 使查找导入非常容易。就我个人而言,我只是使用 REPL 中定义的 clojure 函数 find-classes。

于 2010-02-06T07:39:40.737 回答