讀古今文學網 > Maven實戰 > 10.1.1 account-captcha的POM >

10.1.1 account-captcha的POM

該模塊的POM(Project Object Model,項目對像模型)還是比較簡單的,內容見代碼清單10-1。

代碼清單10-1 account-captcha的POM

首先POM中的第一部分是父模塊聲明,如同account-email、account-persist一樣,這裡將父模塊聲明為account-parent。緊接著是該項目本身的artifactId和名稱,groupId和version沒有聲明,將自動繼承自父模塊。再往下聲明了一個Maven屬性kaptcha.version,該屬性用在依賴聲明中,account-captcha的依賴除了SpringFramework和JUnit之外,還有一個com.google.code.kaptcha:kaptcha。Kaptcha是一個用來生成驗證碼(Captcha)的開源類庫,account-captcha將用它來生成註冊賬戶時所需要的驗證碼圖片,如果想要瞭解更多關於Kaptcha的信息,可以訪問其項目主頁:http://code.google.com/p/kaptcha/。

POM中SpringFramework和JUnit的依賴配置都繼承自父模塊,這裡不再贅述。Kaptcha依賴聲明中version使用了Maven屬性,這在之前也已經見過。需要注意的是,Kaptcha依賴還有一個classifier元素,其值為jdk5,Kaptcha針對Java 1.5和Java 1.4提供了不同的分發包,因此這裡使用classifier來區分兩個不同的構件。

POM的最後聲明了Sonatype Forge這一公共倉庫,這是因為Kaptcha並沒有上傳的中央倉庫,我們可以從Sonatype Forge倉庫獲得該構件。如果有自己的私服,就不需要在POM中聲明該倉庫了,可以代理Sonatype Forge倉庫,或者直接將Kaptcha上傳到自己的倉庫中。

最後,不能忘記把account-captcha加入到聚合模塊(也是父模塊)account-parent中,見代碼清單10-2。

代碼清單10-2 將account-captcha加入到聚合模塊account-parent