【Jboss/Windows】Tomcat 8 + JDK 8 升级为 Jboss eap 7 + JDK8

文章目录

更多相关内容可查看

下载Jboss eap 7安装包

Jboss EAP:JBoss Enterprise Application Platform Download | Red Hat Developer

Jboss 开源:JBoss Application Server Downloads - JBoss Community

执行standalone.bat

解压后,可执行standalone.bat

技巧:区分是windows的包还是linux的包的一种方式是 可以查看bin路径下是.sh还是bat启动项

注意:jdk8不兼容Jboss 7.x ,只能兼容Jboss eap 7

如果是Jboss7.x 在启动的时候会一直报starting,所以启动会一直在starting 我这里是后续在项目中执行才发现这个问题

解决:可以下载一个1.7或以前的版本

用记事本进入jboss的目录:找到bin目录下的standalone.bat,用记事本或者其他的文本编辑软件,修改JBOSS_HOME,为你的jdk1.7,安装路径。(前提是你的jboss环境变量配置正确。JBOSS_HOME:你的jboss路径。path下,加;%JBOSS_HOME%\bin)

修改jdk8不兼容的一些内存空间参数

-XX:MaxPermSize=256M 这个参数在 JDK 1.8 中已经不再支持,因为 Java 8 引入了元空间(Metaspace)取代了永久代(PermGen)。需要将其从 JAVA_OPTS 中移除

查看端口是否被占用

bash 复制代码
netstat -ano | findstr 8080

tasklist | findstr 17744

解决端口占用

如果,要想修改你的jboss服务器端口,可以到jboss->standalone->configuration,找到standalone.xml文件:把 8080修改成你想要的端口重启即可

环境变量配置

修改项目中的pom文件

将原来的tomcat注释掉,加上jboss的依赖,并且要打包为war包,jboss兼容war包

JBoss 是一个 Java EE 应用服务器,而 WAR 包是 Java EE 规范中用于部署 Web 应用程序的标准格式。它包含了 Web 应用程序的所有组件,如 WEB-INF 目录(包含 web.xml 等配置文件)、classes 目录(包含编译后的类文件)和 lib 目录(包含依赖的库)。

java 复制代码
	  	<artifactId>hke.web.service</artifactId>
	    <packaging>war</packaging>
	    <version>${parent.version}</version>
java 复制代码
<!--        <dependency>-->
<!--            <groupId>org.springframework.boot</groupId>-->
<!--            <artifactId>spring-boot-starter-tomcat</artifactId>-->
<!--            <scope>compile</scope>-->
<!--        </dependency>-->

<!--        <dependency>-->
<!--            <groupId>org.apache.tomcat.embed</groupId>-->
<!--            <artifactId>tomcat-embed-core</artifactId>-->
<!--            <scope>${scope.tomcat}</scope>-->
<!--        </dependency>-->
<!--        <dependency>-->
<!--            <groupId>org.apache.tomcat.embed</groupId>-->
<!--            <artifactId>tomcat-embed-el</artifactId>-->
<!--            <scope>${scope.tomcat}</scope>-->
<!--        </dependency>-->
<!--        <dependency>-->
<!--            <groupId>org.apache.tomcat.embed</groupId>-->
<!--            <artifactId>tomcat-embed-websocket</artifactId>-->
<!--            <scope>${scope.tomcat}</scope>-->
<!--        </dependency>-->
<!--        <dependency>-->
<!--            <groupId>org.apache.tomcat</groupId>-->
<!--            <artifactId>tomcat-annotations-api</artifactId>-->
<!--            <scope>${scope.tomcat}</scope>-->
<!--        </dependency>-->
        <dependency>
            <groupId>org.jboss.logging</groupId>
            <artifactId>jboss-logging</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.jboss.spec</groupId>
            <artifactId>jboss-javaee-6.0</artifactId>
            <version>3.0.3.Final</version> <!-- 推荐使用 3.0.3.Final 版本,因为它更适合 JBoss 7.1.1.Final -->
            <type>pom</type>
            <scope>provided</scope>
        </dependency>

配置Jboos启动项

注意:如果是社区版idea,没有jboos启动项需要去下载jboos插件,最好建议切换成专业版会自动集成好,这里也是重新下载了一个idea

企业版:去setting中的Plugins下载Jboss的相关插件,搜到什么下什么,然后重启idea,也可能会出现,但是个人觉得不好用

专业版:

本地localhost启动测试

总结:
idea社区版建议使用专业版
jboss7.x不兼容jdk8,jboss eap 7 兼容jdk8
pom文件修改
8080 端口占用

相关推荐
用户128526116021 天前
我把祖传Java项目重构后,接口响应从3s砍到了200ms,只改了这几行代码
java
Linsk1 天前
组件 = 模板 + 业务逻辑
java·前端·vue.js
星沉远浦1 天前
用Gemini高效解决Java代码报错难以定位的问题
java
用户298698530141 天前
Word 文档字符级格式化:Java 实现方案详解
java·后端
笨鸟飞不快1 天前
从单个服务到集群:一次完整的性能排查复盘
java·前端
荣码1 天前
用Streamlit给AI应用套个界面,10行代码出Web页面
java·python
SamDeepThinking1 天前
Java微服务练习方式
java·后端·微服务
朦胧之2 天前
AI 编程-老项目改造篇
java·前端·后端
程序猿大帅2 天前
别再只当调包侠了:用 Spring AI 落地 Function Calling,我被大模型硬生生砸出了三个大坑
java
程序员晓琪2 天前
约定大于配置:基于 Java 包名自动生成 API 版本路由的最佳实践
java·spring boot·后端