我寫了一個Maven插件,在我的項目的類路徑上創建一些XML文件。 Maven項目相當複雜,並且有一個包含許多子項目的主項目(爲更大的應用程序提供思考服務)。Maven插件工作目錄不常數
插件需要在pom.xml目錄參數,它是相對於類路徑是這樣的:
<docDestination>src/main/webapp/static/</docDestination>
然而,當我嘗試通過new File(docDestination)
訪問此文件夾,生成的目錄取決於從中運行觸發插件的mvn install
命令的項目(或子項目)。
插件只在其中一個子項目的pom.xml
中指定,但是如果我從父項運行mvn-install,它將在父應用程序的src/main/...
文件夾中創建XML文件。如何讓插件使用聲明的項目的文件系統而不是父項目的文件系統?
我應該注意到,如果我導航到終端中的子項目,並在該目錄中運行mvn install
,則會在正確的位置創建文件,這解釋了我的文章的標題。
我想你錯過了添加當前項目的basedir,它可以據我所知由注入的maven參數(MavenProject?)繼承。否則,您可以將配置更改爲$ {project.basedir}/src/main/webapp/static。 – khmarbaise 2012-07-11 15:04:51