Artemis:无法创建经纪人:功能未实现

Bal*_*551 0 activemq-artemis windows-subsystem-for-linux

我曾经在 Windows、Linux 和 WSL 上的 Artemis 中创建代理。从来没有出现过问题。除了我的一台装有 Windows 并运行 WSL2 的计算机。

我在安装 artemis 时做了同样的事情:

sudo groupadd artemis
sudo useradd -s /bin/false -g artemis -d /opt/artemis artemis
cd /opt
sudo wget https://archive.apache.org/dist/activemq/activemq-artemis/2.12.0/apache-artemis-2.12.0-bin.tar.gz
sudo tar -xvzf apache-artemis-2.12.0-bin.tar.gz
sudo mv apache-artemis-2.12.0 artemis
sudo chown -R artemis: artemis
sudo chmod o+x /opt/artemis/bin/
sudo rm apache-artemis-2.12.0-bin.tar.gz
Run Code Online (Sandbox Code Playgroud)

它安装了,但是当我尝试创建自己的代理实例时:

/opt/artemis/bin/artemis create --user app --password pwd --allow-anonymous test
Run Code Online (Sandbox Code Playgroud)

我收到以下错误消息:

Cannot initialize queue:Function not implemented
Run Code Online (Sandbox Code Playgroud)

我已经尝试了好几次,甚至卸载了artemis并删除了用户和组并重新启动了整个过程,但结果总是相同的。

我不知道有什么区别或如何解决问题。任何帮助将不胜感激!

更新 1:没有太多日志,但打开详细模式会给出以下几行:

Executing org.apache.activemq.artemis.cli.commands.Create create --verbose --user app --password pwd --allow-anonymous test
Home::/opt/artemis, Instance::null
Cannot initialize queue:Function not implemented
Run Code Online (Sandbox Code Playgroud)

Jus*_*ram 6

据我所知,消息“无法初始化队列:功能未实现”来自AIO 集成层。我建议您尝试创建实例,--nio以强制代理使用基于 Java 的 NIO 存储接口,而不是本机 AIO 层,后者在您的环境中似乎出现故障。