You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Wildfly 26与Arquillian Remote部署时遇Unknown service name jmx错误求助

解决Wildfly 26 + Arquillian远程容器部署时的"Unknown service name jmx"错误

错误原因

该错误是因为Arquillian远程容器尝试通过JBoss Remoting 3访问JMX服务时,Wildfly 26未正确暴露该服务,或是Arquillian适配器版本与Wildfly版本不兼容导致的。

解决方案

1. 匹配Arquillian适配器与Wildfly版本

wildfly-arquillian-container-remote:2.2.0.Final适配的是较旧版本的Wildfly(约Wildfly 22),与Wildfly 26不兼容。需将适配器版本更新为与Wildfly主版本一致的版本,比如26.1.3.Final:

<!-- pom.xml中更新依赖 -->
<dependency>
    <groupId>org.wildfly.arquillian</groupId>
    <artifactId>wildfly-arquillian-container-remote</artifactId>
    <version>26.1.3.Final</version>
    <scope>test</scope>
</dependency>

2. 确保Wildfly开启JMX远程访问

修改Wildfly的standalone/configuration/standalone.xml(域模式下修改domain.xml),在JMX子系统中添加远程连接器:
找到<subsystem xmlns="urn:jboss:domain:jmx:1.6">节点,添加如下配置:

<remote-connector use-management-endpoint="true"/>

该配置会复用Wildfly的管理端点(默认9990端口)提供JMX远程访问。

3. 配置Arquillian远程连接参数

在src/test/resources下创建或修改arquillian.xml,指定Wildfly的管理地址、端口及认证信息:

<arquillian xmlns="http://jboss.org/schema/arquillian"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://jboss.org/schema/arquillian http://jboss.org/schema/arquillian/arquillian_1_0.xsd">

    <container qualifier="wildfly-remote" default="true">
        <configuration>
            <property name="managementAddress">localhost</property>
            <property name="managementPort">9990</property>
            <property name="username">admin</property>
            <property name="password">your-admin-password</property>
        </configuration>
    </container>
</arquillian>

4. 确认Wildfly管理用户已创建

若未创建管理用户,执行Wildfly bin目录下的add-user.sh(Linux/macOS)或add-user.bat(Windows),创建一个拥有admin权限的用户,用于远程认证。

内容的提问来源于stack exchange,提问作者Lucas Pottersky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 21:42:45