RabbitMQ Java Client - Java依赖项(标准库?)

时间:2013-10-16 15:00:23

标签: java rabbitmq kettle

我需要将RabbitMQ与另一个在Java上运行的系统集成。所以我去了official website,下载了包并将其复制到我的类路径中。然后我跟着basic tutorial,我确认导入外部库是有效的。

我现在遇到的问题可能很容易为Java开发人员解决:我必须导入哪些标准Java库才能使以下代码有效?

import com.rabbitmq.client.Connection;
import com.rabbitmq.client.Channel;
import com.rabbitmq.client.ConnectionFactory;
...
ConnectionFactory factory = new ConnectionFactory();

没有遇到像这样的导入错误:

Line 51, Column 18: No applicable constructor/method found for actual parameters "java.lang.String"; 
candidates are: "void com.rabbitmq.client.ConnectionFactory.setPort(int)"

我尝试过类似的东西,但我不知道Java是如何工作的,所以我想澄清一下。例如,我什么时候应该使用星号?

import java.lang.String;
import java.lang.String.*;

顺便说一下,我试图整合RabbitMQ的系统是Pentaho Data Integration(a.k.a. Kettle)。

2 个答案:

答案 0 :(得分:1)

首先,摆脱java.lang导入。

其次,如API所述,使用setPort而不是int致电String

答案 1 :(得分:0)

在classpath中包含amqp-client - $ {version} jar就足够了。 Astreix用于从包中导入所有类。 java中的类名称以大写字母开头,而包名称小写。所以,java.lang是一个包,String是一个类。默认情况下,所有java.lang包类都在Java程序中导入,您不需要编写import java.lang.String; or import java.lang.*;