逆时针和:gen-class

4

我正在使用Eclipse(4.2.0)和Counteclockwise(0.10.1.STABLE001)。 我有一个Clojure命名空间,想要生成一个类:

(ns a.b.c
  (:gen-class
   :name "a.b.c.Service"))

 (-method [] ...)

有一个缺陷,但在0.59版本中标记为已修复 此处

是否有一种方法可以通过IDE触发或配置它,而无需使用命令行编译?

有一个相关问题,如何在Counterclockwise中使用Eclipse中编译的Clojure类,但没有解决方案。

2个回答

1
我假设您正在使用带有Leiningen的CCW,并且已经有了project.clj文件:
请在project.clj中添加以下内容:
:aot [org.example.sample]

如果您使用CCW创建项目,则可能没有project.clj文件。

不幸的是,我正在使用m2e。我们考虑过使用Leiningen,但还没有准备好放弃Maven提供的分层功能。 - yakshaver
Leiningen是Maven的包装器,它生成一个POM文件,然后调用Maven。(运行lein pom) - Arthur Ulfeldt

1
在您使用的 Counterclockwise 0.10.1 版本中,有一种简单的方法可以实现:您必须从项目的根节点上下文菜单(Run as > Clojure Application)启动启动配置。
  • 从项目根目录启动时,构建器将被配置为每次保存文件时都进行AOT编译整个项目(以及启动时,尽管它有时被证明工作不可靠)。这意味着您的命名空间将被AOT编译,因此您的gen-class也会被编译。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接