Member 13943607 Ответов: 0

Win32exception: указанный модуль не может быть найден


Я пытаюсь запустить образец кода Kafka в среде unity и по этой причине создал потребительский клиент (код приведен ниже).

<pre>using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Confluent.Kafka;
using Confluent.Kafka.Serialization;
using System.Text;

public class KafkaConsumer : MonoBehaviour {

    // Use this for initialization
    void Start () {
        /*
            The consumer application will then pick the messages from the same topic and write them to console output. 
            The process to create the consumer application is also very simple.
             */
        var config = new Dictionary<string, object>
            {
                //{"group.id","sample-consumer" },
                {"group.id","JavaInUseGroup" },
                {"bootstrap.servers", "localhost:9092" },
                { "enable.auto.commit", "false" }

            };

        //using (var consumer = new Consumer<Null, string>(config, null, new StringSerializer(Encoding.UTF8)))
        using (var consumer = new Consumer<Null, string>(config, null, new StringDeserializer(Encoding.UTF8)))
        {
            consumer.Subscribe(new string[] { "javainuse-topic" });

            consumer.OnMessage += (_, msg) =>
            {
                //Console.WriteLine($"Topic: {msg.Topic} Partition: {msg.Partition} Offset :{msg.Offset} {msg.Value}");
                Debug.Log($"Topic: {msg.Topic} Partition: {msg.Partition} Offset :{msg.Offset} {msg.Value}");

                consumer.CommitAsync(msg);
            };

            while (true)
            {
                consumer.Poll(100);
            }
        }


    }


}




Что я уже пробовал:

Для выполнения приведенного выше примера кода я также добавил confluent.Библиотека DLL Kafka в моей папке активов проекта. но всякий раз, когда я запускаю свою игру unity, она выдает ошибку:Win32Exception: указанный модуль не может быть найден.

Rethrow as InvalidOperationException: Error while loading librdkafka.dll or its dependencies from Assets/librdkafka.dll. Check the directory exists, if not check your deployment process. You can also load the library and its dependencies by yourself before any call to Confluent.Kafka Confluent.Kafka.Impl.LibRdKafka.Initialize (System.String userSpecifiedPath) (at <700d5bbe3b974ce5aed001c82b789f6a>:0) Confluent.Kafka.Consumer..ctor (System.Collections.Generic.IEnumerable1[T] config) (at
  <700d5bbe3b974ce5aed001c82b789f6a>:0)
  Confluent.Kafka.Consumer2[TKey,TValue]..ctor (System.Collections.Generic.IEnumerable1[T] config,
  Confluent.Kafka.Serialization.IDeserializer1[T] keyDeserializer, Confluent.Kafka.Serialization.IDeserializer`1[T] valueDeserializer) (at <700d5bbe3b974ce5aed001c82b789f6a>:0) KafkaConsumer.Start () (at Assets/KafkaConsumer.cs:26)

Rob Philpott

Ну, ошибка гласит следующее: "ошибка при загрузке librdkafka.dll или ее зависимости от Assets/librdkafka.dll". Эта библиотека DLL находится там, в папке под названием Assets? Это, вероятно, неуправляемая вещь, используемая confluent.Kafka.dll

0 Ответов