2012-10-12 57 views
1

在開發我的Google Chrome擴展程序時,我希望能夠爲環境構建不同的版本。排除幷包含來自CRX Maven Plugin的文件構建

我使用The CRX Maven Plugin來構建我的擴展。

默認情況下,我希望src/main/chrome下的文件是我的開發文件,因爲我使用Chrome的「Load unpacked extension ...」來在本地進行測試。該擴展還可以進行遠程調用,因此每個環境都有相應的遠程服務器。我已經在conf.js文件中將其外化。我想排除的src/main /鉻/ conf.js從Maven構建文件,其中包括另一conf.js是/ src目錄/主/鉻具有以下配置之外的:

... 
<configuration> 
... 
    <packagingExcludes>js/conf.js</packagingExcludes> 
... 
</configuration> 

我可以沒有看到臨時的構建目錄,我可以在其中使用一些額外的腳本刪除conf.js。有什麼建議麼?

回答

0

CRX Maven Plugin現在支持文件過濾。

您可以將每個環境的conf.js設置爲一個名爲conf.XXX.properties的Java .properties文件,而不是爲每個環境設置不同的conf.js,其中XXX是您要使用的名稱確定構建的目標環境。

<plugin> 
    <groupId>com.btmatthews.maven.plugins</groupId> 
    <artifactId>crx-maven-plugin</artifactId> 
    <version>1.2.0</version> 
    <configuration> 
     ... 
     <filtering>true</filtering> 
     <filters> 
      <filter>etc/conf_${targetEnv}.properties</filter> 
     </filters> 
     ... 
    </configuration> 

你會使用-D選項設置在構建時的目標環境:

該插件可以被配置如下。

mvn -DtargetEnv=XXX 
相關問題