Hello World With JBoss Modules
JBoss Modules是一個相當有趣的項目,他在Jboss應用服務器和Jboss生態系統項目中扮演者重要的角色。但是,網上關于Jboss Modules的東西卻很少。甚至Jboss Modules的官方文檔都是不完整的,更別提教程了。關于他你能在網上找到的最好的資料也就是介紹如何在Jboss 服務器中應用JBoss Modules。
由于我在網上沒有找到一個Jboss Modules的Hello World程序,所以我決定自己寫一個。
下載Jboss Modules
在http://www.jboss.org/上,你無法直接找到JBoss Modules。獲取Jboss Modules有兩種方法,第一種是從?Bintray?或者?Maven 倉庫中下載。第二種就是拿到源碼之后自己編譯。
還有呢,就是下載一個項目,其中包含jboss-modules.jar的也行。比如WildFly。
Hello World
一個古老而又偉大的Hello World代碼:
public class Main { public static void main(String[] args) {new Hello().say(); } }上面的代碼中用到了Hello類,這個類將會包含在另外的模塊中:
public class Hello { public void say() { System.out.println("Hello!"); } }我們將上面的兩個不同的類、編譯后的class文件以及jar包放到不同的模塊下面。我們使其符合Jboss Modules的規范,大致結構如下圖:
如上圖所示,Main類在app模塊中,Hello類在hello模塊中,每個模塊還需要一個module.xml文件。關于文件的具體編寫規范可以參考module命名規范和module文件可用標簽。(JBoss Modules 模塊描述文件解析)
app模塊中的module.xml文件內容如下:
<?xml version="1.0" encoding="UTF-8"?> <module xmlns="urn:jboss:module:1.5" name="app"> <main-class name="Main"/> <resources> <resource-root path="main.jar"/> </resources> <dependencies> <module name="hello"/> </dependencies> </module>它制定了main-class為Main,指定該模塊的classpath為main.jar。并且說明該模塊依賴了hello模塊。
hello模塊中的module.xml文件內容和上面類似:
<?xml version="1.0" encoding="UTF-8"?> <module xmlns="urn:jboss:module:1.5" name="hello"> <resources> <resource-root path="hello.jar"/> </resources> </module>好了!現在我們可以執行新的模塊化的“Hello World”應用程序了:
java -jar jboss-modules-1.5.1.Final.jar -mp mods app控制臺輸出內容:Hello!
通過java -jar jboss-modules-1.5.1.Final.jar開始運行該程序,通過-mp mods指定要運行的模塊的名字。
這個例子不是很實用,但至少它給了我們一些關于如何開始使用JBoss Module的提示。希望,有一天,這個很棒的項目會有完善的文檔,會有更多的教程。
from:https://www.hollischuang.com/archives/1825
總結
以上是生活随笔為你收集整理的Hello World With JBoss Modules的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用JBoss Modules来模块化J
- 下一篇: 在vue中let var 和const