0

我不知道如何解决项目构建时出现的错误。有什么建议可以解决这个问题吗?语言是Java。

make[1]: *** No rule to make target `org/zeromq/ZMQ$Context.class', needed by `all'.  Stop.

根据以下建议,此输出来自make -d

Considering target file `org/zeromq/ZMQ$Context.class'.
File `org/zeromq/ZMQ$Context.class' does not exist.
Looking for an implicit rule for `org/zeromq/ZMQ$Context.class'.
Trying pattern rule with stem `ZMQ$Context.class'.
Trying implicit prerequisite `org/zeromq/ZMQ$Context.class.cpp'.
Trying pattern rule with stem `ZMQ$Context.class'.
Trying implicit prerequisite `org/zeromq/ZMQ$Context.class.o'.
Trying pattern rule with stem `ZMQ$Context.class'.
Trying implicit prerequisite `org/zeromq/ZMQ$Context.class,v'.
...
Must remake target `org/zeromq/ZMQ$Context.class'.
make[1]: *** No rule to make target `org/zeromq/ZMQ$Context.class', needed by `all'.  Stop.

因此,看起来 make 不够聪明,无法查看ZMQ.java'ZMQ$Context.class的定义。这是我的版本make有问题还是图书馆所有者提供给我的makefile有问题?

4

1 回答 1

2

当然是一个简短的问题。答案可能是man make

您将发现-d通用调试选项使冗长甚至--debug=FLAG将输出减少到不那么冗长的调试级别。

在您的特定情况下,Make 尝试查找生成所需的源文件,org/zeromq/ZMQ$Context.class并且 Makefile 规则可能不够聪明,无法猜测它必须从org/zeromq/ZMQ.java.

于 2012-05-22T22:18:29.033 回答