maven中pom.xml常用配置
阿新 • • 發佈:2019-01-03
pom.xml
該檔案用於管理:原始碼、配置檔案、開發者的資訊和角色、問題追蹤系統、組織資訊、專案授權、專案的url、專案的依賴關係等等。
1.1 基本內容
1.1.1 modelVersion
寫明pom版本,一般都是4.0.0
1.1.2 groupId
用於寫明組織名,如com.star.car
1.1.3 artifactId
用於寫明專案名
1.1.4 version
用於寫明專案版本
1.1.5 packaging
寫明打包機制,如war、rar、jar等
1.1.6 name
寫明專案描述名稱,可選
1.1.7 url
寫明網站等
1.2 parent
寫明父pom以及版本等
1.3 properties
定義在該檔案中的常量,常有定義編碼的常量
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
1.4 build
編譯配置
1.4.1 defaultGoal
定義預設目標
1.4.2 directory
定義輸出的檔案目錄
1.4.3 finalName
定義輸出的檔名
1.4.4 resources
定義使用的資原始檔
1.4.5 pluginManagement
定義使用的外掛,和dependencyManagement相似,只定義並未引用
1.4.5.1 plugin
定義外掛,使用artifactId和groupId還有版本定義,並使用configuration進行配置
1.4.6 plugins
使用已定義的外掛
1.5 profiles
定義當某條件觸發時,會啟用某profile
1.6 dependencyManagement
主要內容,定義所依賴的jar包
1.6.1 dependency
使用groupId、artifactId和version確定所依賴的jar等
1.6.1.1 scope
- compile:預設的,在專案打包、編譯、執行、測試時都會用到,會隨著專案一起釋出
- provided,類似compile,期望JDK、容器或使用者會提供這個依賴。如servlet.jar
- runtime,只在執行時使用,如JDBC驅動、日誌包等,適用執行和測試階段
- test,只在測試時使用,用於編譯和執行測試程式碼,如junit,不會隨專案釋出
- system,類似provided,需要顯式提供包含依賴的jar,Maven不會在Repository中查詢它
1.6.1.2 exclusions
為解決依賴衝突的標籤,如果A依賴B,使用本標籤後可讓A強行解除對B的依賴