JBOSS容器碰到的一些问题

8 篇文章 0 订阅

下载安装

选择一个合适的版本进行下载并解压即可。

JBOSS下载地址

https://jbossas.jboss.org/downloads
在这里插入图片描述

解压完后先看README文件

因为涉及到JDK版本兼容性的问题,最终下载的JBOSS版本要跟所运行的项目的编译版本一致。
这样可以避免无法运行或出现一些乱七八糟的错误问题。
在这里插入图片描述

配置环境变量

在我的电脑初配置环境变量

  • 新建JBOSS_HOME,值为文件安装目录
  • Path中新增%JBOSS_HOME%\bin即可

运行

以JBOSS5.1.0为例,解压完后目录如下:

在这里插入图片描述

windows环境下可通过bin目录下的run.bat进行运行,运行完访问localhost:8080会出下如下页面
在这里插入图片描述

环境选择

在server目录下有多个文件,可以选择一些环境;不同的环境可以配置不同的端口
默认情况下是default环境
在这里插入图片描述

修改端口

也是server.xml这个文件,具体在环境目录下的deploy/jbossweb.sar目录下
server.xml这个文件内容跟tomcat的大同小异,如果需要修改一些常用配置可以在这里改。

在这里插入图片描述

项目部署

因为是整合进了IDEA中,直接使用了IDEA进行部署,具体要单独部署的话应该跟tomcat差不多。
使用IDEA部署部署跟IDEA使用电脑下载的tomcat部署项目一样。
在这里插入图片描述

碰到的一些问题

端口号出错:port out of range …

这个是默认端口号太大了,已经超出了范围就报错了。
可通过对容器的Config进行设置

  • 把use default的选中去掉
  • 设置成自己的端口
    在这里插入图片描述

版本不兼容编译出错

报错信息,显示是文件IO出了问题,反射构造器…

java.lang.IllegalArgumentException: Wrong arguments. new for target java.lang.reflect.Constructor expected=[java.net.URI] actual=[java.io.File]
	at org.jboss.reflect.plugins.introspection.ReflectionUtils.handleErrors(ReflectionUtils.java:395)
	at org.jboss.reflect.plugins.introspection.ReflectionUtils.newInstance(ReflectionUtils.java:153)
	at org.jboss.reflect.plugins.introspection.ReflectConstructorInfoImpl.newInstance(ReflectConstructorInfoImpl.java:106)
	at org.jboss.joinpoint.plugins.BasicConstructorJoinPoint.dispatch(BasicConstructorJoinPoint.java:80)
	at org.jboss.aop.microcontainer.integration.AOPConstructorJoinpoint.createTarget(AOPConstructorJoinpoint.java:282)
	at org.jboss.aop.microcontainer.integration.AOPConstructorJoinpoint.dispatch(AOPConstructorJoinpoint.java:103)
	at org.jboss.kernel.plugins.dependency.KernelControllerContextAction$JoinpointDispatchWrapper.execute(KernelControllerContextAction.java:241)
	at org.jboss.kernel.plugins.dependency.ExecutionWrapper.execute(ExecutionWrapper.java:47)
	at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchExecutionWrapper(KernelControllerContextAction.java:109)
	at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchJoinPoint(KernelControllerContextAction.java:70)
	at org.jboss.kernel.plugins.dependency.InstantiateAction.installActionInternal(InstantiateAction.java:66)
	at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:54)
	at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:42)
	at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62)
	at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71)
	at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
	at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
	at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:774)
	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:540)
	at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deployBean(AbstractKernelDeployer.java:319)
	at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deployBeans(AbstractKernelDeployer.java:297)
	at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deploy(AbstractKernelDeployer.java:130)
	at org.jboss.kernel.plugins.deployment.BasicKernelDeployer.deploy(BasicKernelDeployer.java:76)
	at org.jboss.bootstrap.microcontainer.TempBasicXMLDeployer.deploy(TempBasicXMLDeployer.java:91)
	at org.jboss.bootstrap.microcontainer.TempBasicXMLDeployer.deploy(TempBasicXMLDeployer.java:161)
	at org.jboss.bootstrap.microcontainer.ServerImpl.doStart(ServerImpl.java:138)
	at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:450)
	at org.jboss.Main.boot(Main.java:221)
	at org.jboss.Main$1.run(Main.java:556)
	at java.lang.Thread.run(Thread.java:748)
Failed to boot JBoss:
java.lang.IllegalStateException: Incompletely deployed:

DEPLOYMENTS IN ERROR:
  Deployment "AttachmentStore" is in error due to: java.lang.IllegalArgumentException: Wrong arguments. new for target java.lang.reflect.Constructor expected=[java.net.URI] actual=[java.io.File]

DEPLOYMENTS MISSING DEPENDENCIES:
  Deployment "ProfileServiceDeployer" is missing the following dependencies:
    Dependency "AttachmentStore" (should be in state "Installed", but is actually in state "**ERROR**")
  Deployment "ProfileService" is missing the following dependencies:
    Dependency "jboss.kernel:service=KernelController" (should be in state "Installed", but is actually in state "**ERROR**")
    Dependency "ProfileServiceDeployer" (should be in state "Installed", but is actually in state "Instantiated")
  Deployment "ProfileServiceBootstrap" is missing the following dependencies:
    Dependency "ProfileService" (should be in state "Installed", but is actually in state "Instantiated")
    Dependency "jboss.kernel:service=Kernel" (should be in state "Installed", but is actually in state "**ERROR**")
  Deployment "ProfileServicePersistenceDeployer" is missing the following dependencies:
    Dependency "AttachmentStore" (should be in state "Installed", but is actually in state "**ERROR**")

	at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.internalValidate(AbstractKernelDeployer.java:278)
	at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.validate(AbstractKernelDeployer.java:174)
	at org.jboss.bootstrap.microcontainer.ServerImpl.doStart(ServerImpl.java:142)
	at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:450)
	at org.jboss.Main.boot(Main.java:221)
	at org.jboss.Main$1.run(Main.java:556)
	at java.lang.Thread.run(Thread.java:748)
14:05:24,093 INFO  [ServerImpl] Runtime shutdown hook called, forceHalt: true
14:05:24,097 INFO  [ServerImpl] Shutdown complete
Shutdown complete
Halting VM
OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=256M; support was removed in 8.0
Disconnected from server
造成的原因:

应该是版本适配的问题,不同版本的JBOSS需要不同的JRE环境来支持。

解决方案一:

上网查了一些资料说是在配置文件加上一些配置:
配置文件目录:
在这里插入图片描述

新增的属性:
在这里插入图片描述

这个可以解决
在这里插入图片描述

解决方案二:

Jre的环境跟JBOSS的版本匹配
在这里插入图片描述

高版本跑低版本项目报错

这个是因为用JBOSS7.1去运行了jdk1.6编译的项目导致了报出XXXClassNotFound的错误。
高版本跑低版本很容易出现类找不到或者其他乱七八糟的问题,如果出现一些问题可以尝试给容器换一个版本。
当然,不仅是JBOSS,tomcat也会遇到这些版本的问题。

权限不够的问题

我因为把JBOSS的压缩包解压在了C:\Program Files目录下,当执行run.bat的时候他提示我创建日志文件夹失败。
因为这个目录下的执行需要管理员权限,所以要以管理员身份打开运行即可。
不过最佳的方案是将压缩包解压到一个普通权限的环境,这样就避免了这种问题。

在这里插入图片描述

小结

  • 解压的容器放在普通的权限目录下
  • 版本适配;不同的版本对应不同的JRE环境
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值