Ibm cloud Kafka consumer init引发异常:找不到';卡夫卡客户端';进入

Ibm cloud Kafka consumer init引发异常:找不到';卡夫卡客户端';进入,ibm-cloud,message-hub,Ibm Cloud,Message Hub,我有一个java类在bluemix中实现Runnable并实例化kafka消费者。当试图实例化KafkaConsumer时,该类抛出下面的异常。jaas.conf文件存储在共享目录中。在过去的一个月里,这一切都很顺利。它今天开始抛出这个错误。我不记得对代码做过任何更改。我正在使用kafka客户端0.9.0.0。我还尝试了kafka客户端0.9.0.1,结果也一样 org.apache.kafka.common.KafkaException: java.lang.IllegalArgumentE

我有一个java类在bluemix中实现Runnable并实例化kafka消费者。当试图实例化
KafkaConsumer
时,该类抛出下面的异常。
jaas.conf
文件存储在共享目录中。在过去的一个月里,这一切都很顺利。它今天开始抛出这个错误。我不记得对代码做过任何更改。我正在使用kafka客户端0.9.0.0。我还尝试了kafka客户端0.9.0.1,结果也一样

org.apache.kafka.common.KafkaException: 
java.lang.IllegalArgumentException: Could not find a 
'KafkaClient' entry in `/home/vcap/app/wlp/usr/shared/config/lib
 /global/jaas.conf`. 
jaas.conf文件位于它要查找的位置,并且 其中包含以下内容

KafkaClient {
  com.ibm.messagehub.login.MessageHubLoginModule required
  serviceName="kafka"
  username="xxxxxxx"
  password="xxxxxxx"
};
根据“jass.conf”文件的路径,我假定您正在Bluemix中运行Liberty应用程序,如果是这种情况,则必须确保在server.xml中指定jaasLoginModule,如下所示:

<featureManager>
   <feature>appSecurity-2.0</feature>
</featureManager>

<library id="messageHubLoginLib">
  <fileset dir="${server.config.dir}" includes="messagehub.login-1.0.0.jar"/>
</library>

<jaasLoginModule id="KafkaClient"
            className="com.ibm.messagehub.login.MessageHubLoginModule"
            controlFlag="REQUIRED" libraryRef="messageHubLoginLib">
   <options serviceName="kafka" username="#USERNAME" password="#PASSWORD"/>
</jaasLoginModule>

<jaasLoginContextEntry id="KafkaClient" name="KafkaClient" loginModuleRef="KafkaClient"  />

appSecurity-2.0
注意:为了澄清,如果您在Bluemix中使用Liberty应用程序,那么当前的JAAS配置没有使用该JAAS.conf文件。因此,必须使用如上所述的server.xml配置

在这里,您可以找到有关如何根据“jass.conf”文件的路径配置Liberty的更多信息,我假定您正在Bluemix中运行Liberty应用程序,如果是这种情况,则必须确保在server.xml中指定jaasLoginModule,如下所示:

<featureManager>
   <feature>appSecurity-2.0</feature>
</featureManager>

<library id="messageHubLoginLib">
  <fileset dir="${server.config.dir}" includes="messagehub.login-1.0.0.jar"/>
</library>

<jaasLoginModule id="KafkaClient"
            className="com.ibm.messagehub.login.MessageHubLoginModule"
            controlFlag="REQUIRED" libraryRef="messageHubLoginLib">
   <options serviceName="kafka" username="#USERNAME" password="#PASSWORD"/>
</jaasLoginModule>

<jaasLoginContextEntry id="KafkaClient" name="KafkaClient" loginModuleRef="KafkaClient"  />

appSecurity-2.0
注意:为了澄清,如果您在Bluemix中使用Liberty应用程序,那么当前的JAAS配置没有使用该JAAS.conf文件。因此,必须使用如上所述的server.xml配置


在这里,您可以找到有关如何配置Liberty的更多信息,谢谢您的输入。我会试试这个。谢谢你的意见。我会试试这个。