Maven-實作篇 (2)

延續上一回的實作,現在我們將從桌面視窗程式開始!

Desktop

  1. 依照以下資訊,建立 Maven 專案 (使用 maven-archetype-quickstart)
    • groupId: com.appx
    • artifactId: user-service-desktop
    • package: com.appx.userservice.desktop
    • version: 1.0-SNAPSHOT
  2. 這次不實作unit test,所以把 src/test/java 底下 AppTest.java 刪除,同時也移除 POM.xml 裡面 junit 的 dependency
  3. 在 POM.xml 增加以下 plugin 設定,除了 compiler plugin,也使用了 maven-shade-plugin 用來把整個桌面視窗程式打包成單一 jar 檔(包含dependency),可以看到在 package 這個lifecycle build phase 綁定了 shade goal,並且必須指定 main 方法所在的class
    (maven lifecycle的概念非常重要,請參考之前的文章)
  4. 加入 core 專案作為 dependency
  5. 下載以下程式,並放至 src/main/java 底下這個package com.appx.userservice.desktop
    https://drive.google.com/open?id=0B0C215CJ0AjoX2tPLVpVZlJYQkk
  6. 執行 mvn package ,可以發現 target 資料夾底下多了兩個 jar,其中 user-service-desktop-1.0-SNAPSHOT.jar 包含了相關的 dependencies

  7. 可以使用 jar -tf 指令來比較兩個 jar 的內容

    jar -tf user-service-desktop-1.0-SNAPSHOT.jar
    jar -tf original-user-service-desktop-1.0-SNAPSHOT.jar

  8. 執行 jar ,確認一切都 ok,id可以輸入 1 ~ 3,會看到查詢結果

Facebook Comments