Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
RabbitMQ Java客户端-Java依赖项(标准库?)_Java_Rabbitmq_Kettle - Fatal编程技术网

RabbitMQ Java客户端-Java依赖项(标准库?)

RabbitMQ Java客户端-Java依赖项(标准库?),java,rabbitmq,kettle,Java,Rabbitmq,Kettle,我需要将RabbitMQ与另一个运行在Java上的系统集成。所以我去了,下载了包,并把它复制到我的类路径。然后,我按照说明进行操作,并验证导入外部库是否有效 对于Java开发人员来说,我现在面临的问题可能很容易解决:我必须导入哪些标准Java库才能使以下代码正常工作 import com.rabbitmq.client.Connection; import com.rabbitmq.client.Channel; import com.rabbitmq.client.ConnectionFact

我需要将RabbitMQ与另一个运行在Java上的系统集成。所以我去了,下载了包,并把它复制到我的类路径。然后,我按照说明进行操作,并验证导入外部库是否有效

对于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数据集成(又称Kettle)。

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

首先,去掉您的
java.lang
导入


其次,使用
int
而不是
字符串调用
setPort
,如中所述。

您的意思是我应该在“rabbitmq client.jar”(版本3.1.5)之外添加它吗?当我读到[网站]()时,我以为它包括在内了。顺便说一句,我非常确定“rabbitmq client.jar”在类路径中,因为如果我从中取出它,就会得到另一个错误:无法加载导入的类“com.rabbitmq.client.Connection”。