2016-03-17 73 views
0

我正在嘗試檢索Maven jar模塊的實現標題和版本。如果我在構建的jar上使用Myclass.class.getPackage().getImplementationVersion(),它可以正常工作,但在未構建jar的調試環境中卻不起作用,但類可用。Maven:在自定義位置生成MANIFEST

我知道使用Maven JAR插件來生成Maven jar模塊的MANIFEST。所以我正在考慮的一種方法是以某種方式在生成的源輸出文件夾中創建一個MANIFEST副本,該文件夾包含在我的調試類路徑中。要達到這個目的:

  1. 是否可以在自定義位置生成MANIFEST文件?如果是這樣,那麼插件和執行配置需要什麼?
  2. 如果不是,在哪個位置生成文件,那麼我可以使用maven-resources-plugin將它複製到我的自定義位置?

回答

0

清單文件在組裝歸檔時動態創建。沒有默認的方法來做到這一點。 最簡單的方法是將MANIFEST.MF放在資源目錄中,讓Maven過濾它並添加一個配置文件。這將模仿Maven Archiver創建您的MANIFEST.MF的方式。困難的方法是在Maven Archiver周圍創建一個自定義插件,並將相同的配置傳遞給JAR插件,並再次使用配置文件啓用它。