Maven Pom文件标签详解收藏与分享

小咪咪 2022-05-24 05:12 286阅读 0赞
  1. 转载自:https://blog.csdn.net/chen3749102/article/details/52327800
  2. <**span style=”padding:0px; margin:0px”><project** xmlns=”http://maven.apache.org/POM/4.0.0“
  3. xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance“
  4. xsi:schemaLocation=”http://maven.apache.org/POM/4.0.0http://maven.apache.org/maven-v4\_0\_0.xsd"**>**
  5. <**parent**>
  6. <**artifactId**/>
  7. <**groupId**/>
  8. <**version**/>
  9. <**relativePath**/>
  10. </**parent**>
  11. <**modelVersion**>4.0.0</**modelVersion**>
  12. <**groupId**>asia.banseon</**groupId**>
  13. <**artifactId**>banseon-maven2</**artifactId**>
  14. <**packaging**>jar</**packaging**>
  15. <**version**>1.0-SNAPSHOT</**version**>
  16. <**name**>banseon-maven</**name**>
  17. <**url**>http://www.baidu.com/banseon**</url>**
  18. <**description**>A maven project to study maven.</**description**>
  19. <**prerequisites**>
  20. <**maven**/>
  21. </**prerequisites**>
  22. <**issueManagement**>
  23. <**system**>jira</**system**>
  24. <**url**>http://jira.baidu.com/banseon**</url>**
  25. </**issueManagement**>
  26. <**ciManagement**>
  27. <**system**/>
  28. <**url**/>
  29. <**notifiers**>
  30. <**notifier**>
  31. <**type**/>
  32. <**sendOnError**/>
  33. <**sendOnFailure**/>
  34. <**sendOnSuccess**/>
  35. <**sendOnWarning**/>
  36. <**address**/>
  37. <**configuration**/>
  38. </**notifier**>
  39. </**notifiers**>
  40. </**ciManagement**>
  41. <**inceptionYear**/>
  42. <**mailingLists**>
  43. <**mailingList**>
  44. <**name**>Demo</**name**>
  45. <**post**>banseon@126.com</**post**>
  46. <**subscribe**>banseon@126.com</**subscribe**>
  47. <**unsubscribe**>banseon@126.com</**unsubscribe**>
  48. <**archive**>http:/hi.baidu.com/banseon/demo/dev/</**archive**>
  49. </**mailingList**>
  50. </**mailingLists**>
  51. <**developers**>
  52. <**developer**>
  53. <**id**>HELLO WORLD</**id**>
  54. <**name**>banseon</**name**>
  55. <**email**>banseon@126.com</**email**>
  56. <**url**/>
  57. <**roles**>
  58. <**role**>Project Manager</**role**>
  59. <**role**>Architect</**role**>
  60. </**roles**>
  61. <**organization**>demo</**organization**>
  62. <**organizationUrl**>http://hi.baidu.com/banseon**</organizationUrl>**
  63. <**properties**>
  64. <**dept**>No</**dept**>
  65. </**properties**>
  66. <**timezone**>-5</**timezone**>
  67. </**developer**>
  68. </**developers**>
  69. <**contributors**>
  70. <**contributor**>
  71. <**name/><email/><url/><organization/><organizationUrl/><roles/><timezone/><properties/>**
  72. </**contributor**>
  73. </**contributors**>
  74. <**licenses**>
  75. <**license**>
  76. <**name**>Apache 2</**name**>
  77. <**url**>http://www.baidu.com/banseon/LICENSE-2.0.txt**</url>**
  78. <!—项目分发的主要方式:
  79. repo,可以从Maven库下载
  80. manual, 用户必须手动下载和安装依赖—>
  81. <**distribution**>repo</**distribution**>
  82. <**comments**>A business-friendly OSS license</**comments**>
  83. </**license**>
  84. </**licenses**>
  85. <**scm**>
  86. <**connection**>
  87. scm:svn:http://svn.baidu.com/banseon/maven/banseon/banseon-maven2-trunk(dao-trunk)
  88. </**connection**>
  89. <**developerConnection**>
  90. scm:svn:http://svn.baidu.com/banseon/maven/banseon/dao-trunk
  91. </**developerConnection**>
  92. <**tag**/>
  93. <**url**>http://svn.baidu.com/banseon**</url>**
  94. </**scm**>
  95. <**organization**>
  96. <**name**>demo</**name**>
  97. <**url**>http://www.baidu.com/banseon**</url>**
  98. </**organization**>
  99. <**build**>
  100. <**sourceDirectory**/>
  101. <**scriptSourceDirectory**/>
  102. <**testSourceDirectory**/>
  103. <**outputDirectory**/>
  104. <**testOutputDirectory**/>
  105. <**extensions**>
  106. <**extension**>
  107. <**groupId**/>
  108. <**artifactId**/>
  109. <**version**/>
  110. </**extension**>
  111. </**extensions**>
  112. <**defaultGoal**/>
  113. <**resources**>
  114. <**resource**>
  115. <**targetPath**/>
  116. <**filtering**/>
  117. <**directory**/>
  118. <**includes**/>
  119. <**excludes**/>
  120. </**resource**>
  121. </**resources**>
  122. <**testResources**>
  123. <**testResource**>
  124. <**targetPath/><filtering/><directory/><includes/><excludes**/>
  125. </**testResource**>
  126. </**testResources**>
  127. <**directory**/>
  128. <**finalName**/>
  129. <**filters**/>
  130. <**pluginManagement**>
  131. <**plugins**>
  132. <**plugin**>
  133. <**groupId**/>
  134. <**artifactId**/>
  135. <**version**/>
  136. <**extensions**/>
  137. <**executions**>
  138. <**execution**>
  139. <**id**/>
  140. <**phase**/>
  141. <**goals**/>
  142. <**inherited**/>
  143. <**configuration**/>
  144. </**execution**>
  145. </**executions**>
  146. <**dependencies**>
  147. <**dependency**>
  148. ……
  149. </**dependency**>
  150. </**dependencies**>
  151. <**inherited**/>
  152. <**configuration**/>
  153. </**plugin**>
  154. </**plugins**>
  155. </**pluginManagement**>
  156. <**plugins**>
  157. <**plugin**>
  158. <**groupId/><artifactId/><version/><extensions/>**
  159. <**executions**>
  160. <**execution**>
  161. <**id/><phase/><goals/><inherited/><configuration**/>
  162. </**execution**>
  163. </**executions**>
  164. <**dependencies**>
  165. <**dependency**>
  166. ……
  167. </**dependency**>
  168. </**dependencies**>
  169. <**goals/><inherited/><configuration**/>
  170. </**plugin**>
  171. </**plugins**>
  172. </**build**>
  173. <**profiles**>
  174. <**profile**>
  175. <**id**/>
  176. <!—自动触发profile的条件逻辑。Activation是profile的开启钥匙。profile的力量来自于它
  177. 能够在某些特定的环境中自动使用某些特定的值;这些环境通过activation元素指定。activation元素并不是激活profile的唯一方式。—>
  178. <**activation**>
  179. <**activeByDefault**/>
  180. <**jdk**/>
  181. <**os**>
  182. <**name**>Windows XP</**name**>
  183. <**family**>Windows</**family**>
  184. <**arch**>x86</**arch**>
  185. <**version**>5.1.2600</**version**>
  186. </**os**>
  187. <!—如果Maven检测到某一个属性(其值可以在POM中通过${名称}引用),其拥有对应的名称和值,Profile就会被激活。如果值
  188. 字段是空的,那么存在属性名称字段就会激活profile,否则按区分大小写方式匹配属性值字段—>
  189. <**property**>
  190. <**name**>mavenVersion</**name**>
  191. <**value**>2.0.3</**value**>
  192. </**property**>
  193. <!—提供一个文件名,通过检测该文件的存在或不存在来激活profile。missing检查文件是否存在,如果不存在则激活
  194. profile。另一方面,exists则会检查文件是否存在,如果存在则激活profile。—>
  195. <**file**>
  196. <**exists**>/usr/local/hudson/hudson-home/jobs/maven-guide-zh-to-production/workspace/</**exists**>
  197. <**missing**>/usr/local/hudson/hudson-home/jobs/maven-guide-zh-to-production/workspace/</**missing**>
  198. </**file**>
  199. </**activation**>
  200. <**build**>
  201. <**defaultGoal**/>
  202. <**resources**>
  203. <**resource**>
  204. <**targetPath/><filtering/><directory/><includes/><excludes**/>
  205. </**resource**>
  206. </**resources**>
  207. <**testResources**>
  208. <**testResource**>
  209. <**targetPath/><filtering/><directory/><includes/><excludes**/>
  210. </**testResource**>
  211. </**testResources**>
  212. <**directory/><finalName/><filters**/>
  213. <**pluginManagement**>
  214. <**plugins**>
  215. <**plugin**>
  216. <**groupId/><artifactId/><version/><extensions/>**
  217. <**executions**>
  218. <**execution**>
  219. <**id/><phase/><goals/><inherited/><configuration**/>
  220. </**execution**>
  221. </**executions**>
  222. <**dependencies**>
  223. <**dependency**>
  224. ……
  225. </**dependency**>
  226. </**dependencies**>
  227. <**goals/><inherited/><configuration**/>
  228. </**plugin**>
  229. </**plugins**>
  230. </**pluginManagement**>
  231. <**plugins**>
  232. <**plugin**>
  233. <**groupId/><artifactId/><version/><extensions/>**
  234. <**executions**>
  235. <**execution**>
  236. <**id/><phase/><goals/><inherited/><configuration**/>
  237. </**execution**>
  238. </**executions**>
  239. <**dependencies**>
  240. <**dependency**>
  241. ……
  242. </**dependency**>
  243. </**dependencies**>
  244. <**goals/><inherited/><configuration**/>
  245. </**plugin**>
  246. </**plugins**>
  247. </**build**>
  248. <**modules**/>
  249. <**repositories**>
  250. <**repository**>
  251. <**releases**>
  252. <**enabled/><updatePolicy/><checksumPolicy**/>
  253. </**releases**>
  254. <**snapshots**>
  255. <**enabled/><updatePolicy/><checksumPolicy**/>
  256. </**snapshots**>
  257. <**id/><name/><url/><layout/>**
  258. </**repository**>
  259. </**repositories**>
  260. <**pluginRepositories**>
  261. <**pluginRepository**>
  262. <**releases**>
  263. <**enabled/><updatePolicy/><checksumPolicy**/>
  264. </**releases**>
  265. <**snapshots**>
  266. <**enabled/><updatePolicy/><checksumPolicy**/>
  267. </**snapshots**>
  268. <**id/><name/><url/><layout/>**
  269. </**pluginRepository**>
  270. </**pluginRepositories**>
  271. <**dependencies**>
  272. <**dependency**>
  273. ……
  274. </**dependency**>
  275. </**dependencies**>
  276. <**reports**/>
  277. <**reporting**>
  278. ……
  279. </**reporting**>
  280. <**dependencyManagement**>
  281. <**dependencies**>
  282. <**dependency**>
  283. ……
  284. </**dependency**>
  285. </**dependencies**>
  286. </**dependencyManagement**>
  287. <**distributionManagement**>
  288. ……
  289. </**distributionManagement**>
  290. <**properties**/>
  291. </**profile**>
  292. </**profiles**>
  293. <**modules**/>
  294. <**repositories**>
  295. <**repository**>
  296. <**releases**>
  297. <**enabled**/>
  298. <**updatePolicy**/>
  299. <**checksumPolicy**/>
  300. </**releases**>
  301. <**snapshots**>
  302. <**enabled/><updatePolicy/><checksumPolicy**/>
  303. </**snapshots**>
  304. <**id**>banseon-repository-proxy</**id**>
  305. <**name**>banseon-repository-proxy</**name**>
  306. !--远程仓库URL,按protocol://hostname/path形式--
  307. <**url**>http://192.168.1.169:9999/repository/**</url>**
  308. <**layout**>default</**layout**>
  309. </**repository**>
  310. </**repositories**>
  311. <**pluginRepositories**>
  312. <**pluginRepository**>
  313. ……
  314. </**pluginRepository**>
  315. </**pluginRepositories**>
  316. <**dependencies**>
  317. <**dependency**>
  318. <**groupId**>org.apache.maven</**groupId**>
  319. <**artifactId**>maven-artifact</**artifactId**>
  320. <**version**>3.8.1</**version**>
  321. <**type**>jar</**type**>
  322. <**classifier></classifier>**
  323. <!—依赖范围。在项目发布过程中,帮助决定哪些构件被包括进来。欲知详情请参考依赖机制。
    • compile :默认范围,用于编译
    • provided:类似于编译,但支持你期待jdk或者容器提供,类似于classpath
    • runtime: 在执行时需要使用
    • test: 用于test任务时使用
    • system: 需要外在提供相应的元素。通过systemPath来取得
    • systemPath: 仅用于范围为system。提供相应的路径
    • optional: 当项目自身被依赖时,标注依赖是否传递。用于连续依赖时使用—>
  324. <**scope**>test</**scope**>
  325. <**systemPath></systemPath>**
  326. <**exclusions**>
  327. <**exclusion**>
  328. <**artifactId**>spring-core</**artifactId**>
  329. <**groupId**>org.springframework</**groupId**>
  330. </**exclusion**>
  331. </**exclusions**>
  332. <**optional**>true</**optional**>
  333. </**dependency**>
  334. </**dependencies**>
  335. <**reports></reports>**
  336. <**reporting**>
  337. <**excludeDefaults**/>
  338. <**outputDirectory**/>
  339. <**plugins**>
  340. <**plugin**>
  341. <**groupId**/>
  342. <**artifactId**/>
  343. <**version**/>
  344. <**inherited**/>
  345. <**configuration**/>
  346. <**reportSets**>
  347. <**reportSet**>
  348. <**id**/>
  349. <**configuration**/>
  350. <**inherited**/>
  351. <**reports**/>
  352. </**reportSet**>
  353. </**reportSets**>
  354. </**plugin**>
  355. </**plugins**>
  356. </**reporting**>
  357. <**dependencyManagement**>
  358. <**dependencies**>
  359. <**dependency**>
  360. ……
  361. </**dependency**>
  362. </**dependencies**>
  363. </**dependencyManagement**>
  364. <**distributionManagement**>
  365. <**repository**>
  366. <**uniqueVersion**/>
  367. <**id**>banseon-maven2</**id**>
  368. <**name**>banseon maven2</**name**>
  369. <**url**>file://${basedir}/target/deploy</**url**>
  370. <**layout**/>
  371. </**repository**>
  372. <**snapshotRepository**>
  373. <**uniqueVersion**/>
  374. <**id**>banseon-maven2</**id**>
  375. <**name**>Banseon-maven2 Snapshot Repository</**name**>
  376. <**url**>scp://svn.baidu.com/banseon:/usr/local/maven-snapshot</**url**>
  377. <**layout**/>
  378. </**snapshotRepository**>
  379. <**site**>
  380. <**id**>banseon-site</**id**>
  381. <**name**>business api website</**name**>
  382. !--部署位置的URL,按protocol://hostname/path形式--
  383. <**url**>
  384. scp://svn.baidu.com/banseon:/var/www/localhost/banseon-web
  385. </**url**>
  386. </**site**>
  387. <**downloadUrl**/>
  388. <**relocation**>
  389. <**groupId**/>
  390. <**artifactId**/>
  391. <**version**/>
  392. <**message**/>
  393. </**relocation**>
  394. <**status**/>
  395. </**distributionManagement**>
  396. <**properties**/>
  397. </**project**> </**span**>

发表评论

表情:
评论列表 (有 0 条评论,286人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Maven POM 用法及标签详解

    POM(Project Object Model,项目对象模型)是Maven工程的基本工作单元,是一个xml文件,包含了项目的基本信息,用于描述项目如何构建,声明项目依赖,等等

    相关 maven POM.xml 标签详解

     pom作为项目对象模型。通过xml表示maven项目,使用pom.xml来实现。主要描述了项目:包括配置文件;开发者需要遵循的规则,缺陷管理系统,组织和licenses,项目