jboss-as-7.1.1.Final:(二)远程调试设置

本文介绍了如何通过SocketAttach模式配置JBoss进行远程调试。主要内容包括修改standalone.conf文件中的监听端口设置,以及使用Eclipse或MyEclipse作为调试工具的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们采用Socket Attach的连接模式,所以先得把JBoss设置好然后启动。
在其它设置都OK的情况下,jboss的远程调试设置很简单:
进入$JBOSS_HOME1/bin目录,打开standalone.conf文件,找到该行:
#JAVA_OPTS="$JAVA_OPTS -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"
将注释符#去掉就OK了,其中8787为连接的监听端口,调试工具将要用到。


调试工具:Eclipse、MyEclipse。
菜单项:Run>Debug Configurations>Remote Java Application。
双击或右键New一个Remote Java Application之后,只需填入两个参数就可以了:
Host:IP地址
Port:就是上面提到的8787端口
jboss启动后就可以点击Debug,断点直接在源文件里面打就是了,
当然,别忘了部署的代码要和源文件一致,保存上述设置并命名也是可以的。


  1. JBoss的安装根目录。
(InstallsAwareAction.java:42) [jboss-kernel.jar:2.2.0.SP2] at org.jboss.dependency.plugins.action.SimpleControllerContextAction.sim pleInstallAction(SimpleControllerContextAction.java:62) [jboss-dependency.jar:2. 2.0.SP2] at org.jboss.dependency.plugins.action.AccessControllerContextAction.ins tall(AccessControllerContextAction.java:71) [jboss-dependency.jar:2.2.0.SP2] at org.jboss.dependency.plugins.AbstractControllerContextActions.install (AbstractControllerContextActions.java:51) [jboss-dependency.jar:2.2.0.SP2] at org.jboss.dependency.plugins.AbstractControllerContext.install(Abstra ctControllerContext.java:379) [jboss-dependency.jar:2.2.0.SP2] at org.jboss.dependency.plugins.AbstractController.install(AbstractContr oller.java:2044) [jboss-dependency.jar:2.2.0.SP2] at org.jboss.dependency.plugins.AbstractController.incrementState(Abstra ctController.java:1083) [jboss-dependency.jar:2.2.0.SP2] at org.jboss.dependency.plugins.AbstractController.executeOrIncrementSta teDirectly(AbstractController.java:1322) [jboss-dependency.jar:2.2.0.SP2] at org.jboss.dependency.plugins.AbstractController.resolveContexts(Abstr actController.java:1246) [jboss-dependency.jar:2.2.0.SP2] at org.jboss.dependency.plugins.AbstractController.resolveContexts(Abstr actController.java:1139) [jboss-dependency.jar:2.2.0.SP2] at org.jboss.dependency.plugins.AbstractController.change(AbstractContro ller.java:939) [jboss-dependency.jar:2.2.0.SP2] at org.jboss.dependency.plugins.AbstractController.change(AbstractContro ller.java:654) [jboss-dependency.jar:2.2.0.SP2] at org.jboss.system.ServiceController.doChange(ServiceController.java:67 1) [:6.1.0.Final (Build SVNTag:JBoss_6.1.0.Final date: 20110816)] at org.jboss.system.ServiceController.start(ServiceController.java:443) [:6.1.0.Final (Build SVNTag:JBoss_6.1.0.Final date: 20110816)] at org.jboss.system.microcontainer.jmx.ServiceControl
03-18
<think>好的,用户遇到了JBoss依赖安装错误的问题,具体是在InstallsAwareAction.java的第42行,jboss-kernel.jar版本2.2.0.SP2。首先,我需要分析可能的原因。根据用户提到的引用[2],当切换到Java 7或8时启动JBoss 6会出错,这可能是因为JBoss 6对Java 7+的兼容性问题。用户提供的错误发生在InstallsAwareAction类中,可能与依赖解析或类加载有关。 接下来,我应该检查JBoss版本与Java版本的兼容性。JBoss 6.1.0.Final可能仅支持Java 6,不支持更高版本。用户需要确认是否必须使用Java 7或8,或者是否可以降级到Java 6。不过,考虑到Java 6已经过时,这可能不是一个理想的解决方案。 另外,引用[3]提到使用shrinkwrap-resolver处理Maven依赖,并建议在pom中使用内置参数。可能需要检查项目中的依赖配置是否正确,是否有不兼容的依赖项被引入。同时,用户可能需要更新jboss-kernel.jar到支持Java 7+的版本,但需要确认是否存在这样的版本。 可能的解决方案包括:降级Java版本、升级JBoss到支持Java 7+的版本、检查并修正依赖配置,或者寻找补丁。此外,用户可能需要检查Maven设置,确保依赖解析正确,避免网络问题导致依赖下载失败,如引用[4]提到的使用压缩版或稳定网络环境。 需要提醒用户注意版本兼容性,并建议详细查看日志以定位具体错误。同时,引用[1]中的堆栈信息可能帮助进一步分析问题根源。</think>### JBoss依赖安装错误解决方案 根据您描述的**InstallsAwareAction.java line 42**报错(涉及jboss-kernel.jar 2.2.0.SP2),结合引用[2]中提到的Java版本兼容性问题,以下是关键分析步骤和解决方案: --- #### 1. 确认Java版本兼容性 - **问题根源**:JBoss AS 6.1.0.Final官方仅支持Java 6[^2]。若使用Java 7/8启动,会因字节码版本不兼容导致类加载失败。 - **验证方法**: ```bash java -version # 检查当前Java版本 ``` - **解决方案**: - 降级至Java 6(临时措施) - 升级至**JBoss EAP 7+**(支持Java 8+) --- #### 2. 依赖冲突排查 若必须使用JBoss 6,需检查依赖树: - **使用Maven命令**: ```bash mvn dependency:tree -Dverbose -Dincludes=org.jboss.kernel ``` - **关键点**: - 确保`jboss-kernel`版本与容器一致(2.2.0.SP2对应JBoss 6.1.0) - 排除冲突依赖(例如旧版`jboss-common-core`) --- #### 3. 补丁修复(高风险操作) 若问题由特定类方法触发,可尝试以下步骤: 1. 解压`jboss-kernel.jar`找到`InstallsAwareAction.class` 2. 反编译后定位第42行逻辑 3. 修改代码重新编译(需签名对齐) --- #### 4. 替代方案建议 推荐迁移至**WildFly 26+**(JBoss社区版)并配合Java 11,其依赖管理更现代化[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值