wildFly是一款服务器,和tomcat一样,不过事jboss服务器的as版本罢了,相比于Jboss的EPA版本就比较繁重,所以有了这个Jboss服务器的轻便版本。至于什么时候独立出来的版本,之类的我就不给你扯淡了。
bin目录下有很多脚本文件,想启动wildfly直接执行./standalone.sh(linux环境下) 或者./standalone.bat(windows环境下)
对应的会加载standalone文件夹下面的配置文件,默认加载standalone.xml(可以修改启动脚本,修改默认配置文件为别的)
当然也可以在执行启动脚本的时候指定配置文件,同时也可以指定环境变量配置和系统属性配置格式如下
./standalone.sh --server-config=standalone-full.xml -Dorg.kie.server.id=first-kie-server
上面有不同的standalone配置文件,从文件命名基本就可以知道配置文件支持什么样的特性了。如果看不出来,那你可得学聪明点,至于详细的内容配置看下面:
配置文件的结构大致如上面所示:
excetion是拓展模块:配置的module就是前面说的modules文件夹下面配置的module
System-property配置的是系统变量
Management就是管理模块
profile配置一些子系统信息,包括数据源 热部署所需要的scanner等,配置了scanner就会自动扫描对应监控的文件的配置,从而不用重启wildfly就会自动加载新配置:
interfaces 配置的是可以访问该服务器ip
socket-binding-group配置的是对应模块监听的端口,
我们都知道,java一直以来加载class文件和各种jar的资源都是通过classpath,这样会造成很多问题,比如下面的问题
针对这些问题,Jboss 都从设计上面给出了解决方案:
wildFly Modules是一个适用于java模块化类加载以及执行环境的实现,传统的java加载类 是通过类加载器一个个加载类,现在讲一个jar文件定义成一个module,该module仅链接依赖的其他module,而不再以来其他任何资源。Jboss module 实现了一个线程安全的,快速的高并发的类加载器委派模型,再加上一个可拓展的模块解析引擎,形成一个独特的,简单的,强大的应用程序执行和分布系统。
WildFly Modules被设计为能够和现有的library或者application一起工作而不需要任何的修改,因为它简单的命名策略和解析策略不想OSGi,WildFly Modules 并没有实现一个容器,而是一个瘦的启动包装器,在一个模块化环境执行一个应用。这时你的应用接管控制权,模块化则准备好在需要时装载和链接模块,此外,只有当一个模块被依赖的时候,他才会被装载,并不会为了解析而装载,也就是说,模块化应用程序的性能仅依赖于实际就是用的模块数(并在模块被使用的时候),而不是系统中的模块总数目,模块可以被用户随时装载。
一个模块化程序使用以下命令启动:
java -jar jboss-modules.jar -mp path/to/modules my.main.module.name
在模块路径(-mp)中需要指定默认模块加载器需要搜素加载模块的根目录。my.main.module.name 指定要运行的模块名称。
下面看下module.xml的内容
在jboss-moduels.jar里有一个schema文件来定义模块描述符的格式,因此集成到你喜欢的IDE中会很容易。JBoss Moduels提供了很多扩展的功能去严格控制什么java包是“exported"或者“imported',所以你可以从你的 Jar文件里选择性的不包含一些资源(这样使用预打包的jar文件时将变得更为简单)。
管理页面控制台添加,和tomcat 的控制台添加类似,此处省略
进入主目录里面的/bin目录下,有个jboss-cli.sh 执行这个脚本,然后deploy你要部署的文件
jboss-cli.sh
deploy /xxxx/xxxx/xxx.jar 部署
undeploy /xxxx/xxxx/xxx.jar 卸载
在你的项目的pom.xml文件里添加下面的依赖:
org.jboss.as.plugins
jboss-as-maven-plugin
7.3.Final
使用 mvn jboss-as:deploy 进行部署
使用mvn jboss-as:undeploy 进行卸载
就是将你的jar或者war文件复制到standalone/deployments/目录下
执行wildfly主目录中bin目录下启动脚本standalone.sh(bat)
wildfly服务器启动,如果启动了访问不了 启动的时候,就在standalone.sh 后面添加 -b 0.0.0.0
变成下面的 ./standalone.sh -b 0.0.0.0
参考链接如下:
https://blog.csdn.net/kylinsoong/article/details/17302241