The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

深入淺出 Apache Maven 的 Plugins 外掛機制

Apache Maven 之所以強大,是因為他有一個強大的 Plugin 執行框架,你任何想讓 Maven 幫你完成的工作,無論是建置(Build)、封裝(Packaging)、產生報表(Reporting)、執行測試(Tests),全部都是透過 Plugins 完成的。它除了內建的核心 Plugins 之外,還有數以百計的第三方 Plugins 可以安裝使用。今天這篇文章我就來介紹一下他的基本架構與使用方式。

... 繼續閱讀 ...

珍惜生命,學習 Java 請少用 PowerShell 當成你主要的 Shell 環境

我個人在學習一門技術時,通常不太喜歡過渡依賴 IDE 幫我完成工作,因為方便的背後會錯過許多技術細節,所以我常常會不經意的刻意繞一下遠路。就像我今天在練習用 Maven 開發 Multi-Module Project 的時候,就發現我第一個命令就卡關了,這也太不順了吧。今天這篇文章,我就來說說為什麼建議大家還是少用 PowerShell 來當成你的主要工作環境。

... 繼續閱讀 ...

如何將私有的 JAR 檔加入到由 Apache Maven 管理的 Java 專案中

我們最近有個新的 Java 專案,客戶提供原始碼之後,卻發現他們自己架設的 Maven Repository 並沒有開啟防火牆讓我們連線,以致於專案無法下載相依套件而無法建置。但除了開防火牆連線外,其實還有很多方法可以讓你獲取 Maven 所需的相依套件。今天這篇文章,我就來分享關於 Maven 如何管裡相依套件,以及如何正確的將私有的第三方 JAR 檔加到專案內,降低團隊取得這些 JAR 檔的門檻。

... 繼續閱讀 ...

重新認識 Apache Maven 建置與套件管理工具

許多寫 Java 的朋友都採用 Apache Maven 做為專案的建置工具,但是 Apache Maven 有相當多的內涵,我發現並沒有很多人可以很好的解釋這套工具,甚至有一些錯誤的認知,我自己也是在深入瞭解後才發現原來 Apache Maven 可以做這麼多事,甚至你可以拿 Apache Maven 來建置任意程式語言開發的專案。這篇文章我就來好好介紹一下這套優異的建置與套件管理工具。

... 繼續閱讀 ...

如何使用 Google Java Format 做到更決斷的 Java 原始碼編排風格

其實要在多套不同的 IDE 開發工具之間統一編碼風格(Coding Style)真的不太容易,不同 IDE 之間的程式碼格式化能力不同,有的強、有的弱,自動排版完多多少少還是會有些差異,因此很難做到真正的統一。因此 Google 已經漸漸移往更為決斷的 google-java-format 格式化工具,不太傾向依賴不同的 IDE 之間的程式碼格式化能力。本篇文章我打算分享我這兩天的研究成果,看如何在不同 Java 工具之間如何做到更完美的風格整合。

... 繼續閱讀 ...

如何套用 Google Java Style Guide 在不同的 Java 開發工具之間

知名的 Google Java Style Guide 是許多 Java 開發人員遵循 Java 程式碼撰寫風格的指引之一,該指引也定義了一組格式化定義檔,其中包含了 EclipseIntellJ IDEA 與其他 IDE 的整合,可以幫助你跨越開發工具之間的格式化差異,讓不同人使用不同 Java 開發工具,也能統一基礎 Java 程式碼的撰寫風格。

... 繼續閱讀 ...

如何使用 OpenSSL 建立一張含有 Certificate Revocation List (CRL) 的憑證

最近因為公司在建立 ISO 27001 資訊安全管理系統,在文件管理部分就會想說要有一個高強度且具備不可否認性的數位簽章(Digital Signature)。建立一組公司用的 CA 憑證並透過這張 CA 憑證簽發給員工使用的數位憑證其實很簡單,但之前一直沒機會研究如何手工打造 CRL 憑證撤銷清單,今天研究了一下,終於可以自行簽發 CRL 憑證了。

... 繼續閱讀 ...