日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Maven原型创建技巧

發布時間:2023/12/3 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Maven原型创建技巧 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
我最近需要為姜黃SOA項目創建一些Maven原型。 對于不了解的人來說, Maven原型是一種基于一些預先罐裝的項目模板生成項目的方法。 對于當前的姜黃SOA原型,它將創建一個多模塊Maven項目,該項目包含Interface和Service項目以及基本的WSDL和適當配置的POM。

可以在命令行或通過m2eclipse的New Maven Project向導運行。 通過對Maven原型的支持,其他IDE(例如NetBeans,IntelliJ等)也可以使用它。
開始使用Maven原型最困難的是現有的相對較差的文檔。 除了最基本的用途( archetype:create-from-project )之外,它可以在已有的maven項目或父項目的情況下創建原型,沒有什么可做的。 因此,這里有一些提示。

目錄/文件名替換
在模板生成過程中,有些情況下您要輸出不同的模塊名稱,有時還要輸出不同的文件名。 為此,請使用變量名重命名您要替換的目錄或文件部分。 例如,如果您將__rootArtifactId__指定為目錄名或文件名的一部分,則將替換在mvn archetype:generate期間輸入為artifactId的內容。 您可以對自定義屬性執行相同的操作。 例子

內置屬性
在替換過程中可以使用一些內置屬性。 這些是:

  • groupId
  • artifactId
  • rootArtifactId
  • package –基本的Java程序包名稱,在項目創建期間放置在src / main / java中。

您也可以在POM和其他文件模板中使用它們。

Archetype-metadata.xml
創建項目后,存儲在archetype-resources / META-INF / maven文件夾中的archetype-metadata.xml是您需要調整要生成的內容和方式的地方。

對于模塊,您需要調整屬性:

  • id –這是將要生成的模塊的名稱。
  • dir –模板目錄
  • 名稱-將放置在pom文件中的工件ID。

對于id和name屬性,您可以使用標準的Maven屬性規范:$ {someproperty}。 對于目錄,您需要使用特殊的__someproperty__表示法。 在大多數情況下,這將是__rootArtifactId__。 姜黃SOA原型中的一個例子。

必需的屬性
必需屬性是提示您提示可在模板中替代的其他信息的方式。 生成過程中將提示您指定的任何屬性。 您也可以使用-D選項從命令行傳遞它們。 必需的屬性在模板中作為屬性引用,并在生成過程中被替換。

請注意指定默認值,在生成過程中不會提示您輸入默認值。 仍可以使用-D選項覆蓋它們。

原型目錄
擁有原型目錄很重要。 如果您使用的是Nexus 1.9.x,它將自動搜索您的存儲庫并為每個存儲庫生成原型目錄。 它掃描所有原型,并且在部署原型后立即更新目錄條目。 如果您還沒有原型目錄,那么maven可以從本地存儲庫為您創建一個原型目錄。 只需運行mvn archetype:crawl。 輸出將放置在您的.m2存儲庫中。 原型很重要,因為它們可以讓其他人知道您的自定義原型,并提供一種共享和發現它們的方式。

Hopefull提供了這些技巧,您可以免除我所忍受的一些麻煩。 我的下一個任務是幫助Minerva項目創建一些原型,從而使Eclipse項目可以更輕松地開始使用Tycho。

您還有其他提示或需要注意的事項嗎? 如果是這樣,請隨時添加評論。

參考:來自JCG合作伙伴的 Maven原型創建技巧 ? David Carver在智力抽筋博客上。


翻譯自: https://www.javacodegeeks.com/2012/02/maven-archetype-creation-tips.html

總結

以上是生活随笔為你收集整理的Maven原型创建技巧的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。