2017-06-19 29 views
0

我已经成功地创建了一个精缩/压缩我的CSS和版本使用Maven插件替换源文件中的HTML与缩小的版本

但现在我想取代我的主HTML页面的加载所有的部分javascript文件这些文件,我的意思是我有这个在我的HTML

<link rel="stylesheet" href="styles/app/01.css"> 
<link rel="stylesheet" href="styles/app/02.css"> 
<link rel="stylesheet" href="styles/app/03.css"> 

,我需要的东西来替代这样

<link rel="stylesheet" href="styles/app/minified.css"> 

,并在JavaScript部分,我有这

<script src="scripts/01.js"></script> 
<script src="scripts/02.js"></script> 
<script src="scripts/03.js"></script> 

,我需要与

<script src="scripts/minified.js"></script> 

更换有没有办法做到这一点使用Maven?还是我需要别的东西?

回答

0

我发现com.google.code.maven-replacer-plugin取得了一些成功。以下是我迄今为止

首先我包围我的风格和脚本“标志”

<!-- replaceCSS --> 
<link rel="stylesheet" href="styles/app/01.css"> 
<link rel="stylesheet" href="styles/app/02.css"> 
<link rel="stylesheet" href="styles/app/03.css"> 
<!-- replaceCSSEnd --> 
... 
... 
... 
<!-- replaceJS --> 
<script src="scripts/01.js"></script> 
<script src="scripts/02.js"></script> 
<script src="scripts/03.js"></script> 
<!-- replaceJS --> 

,并在我的POM我已经包含插件

<plugin> 
        <groupId>com.google.code.maven-replacer-plugin</groupId> 
        <artifactId>replacer</artifactId> 
        <version>1.5.0</version> 
        <executions> 
         <execution> 
          <phase>package</phase> 
          <goals> 
           <goal>replace</goal> 
          </goals> 
         </execution> 
        </executions> 
        <configuration> 
         <file>target/${project.build.finalName}/app/index.html</file> 
         <replacements> 
          <replacement> 
           <token>(?m)&lt;!-- replaceCSS(.|\s)*?replaceCSSEnd --&gt;</token> 
           <value>&lt;link rel="stylesheet" type="text/css" href="styles/styles.css"/&gt;</value> 
          </replacement> 
          <replacement> 
           <token>(?m)&lt;!-- replaceJS(.|\s)*?replaceJSEnd --&gt;</token> 
           <value>&lt;script src="scripts/scripts.js"/&gt;</value> 
          </replacement> 
         </replacements> 
        </configuration> 
       </plugin> 

当我运行acomplished建立,或测试替换与mvn替代品:取代我得到一个异常说,像

at java.util.regex.Pattern$BranchConn.match(Pattern.java:4568) 

但它只发生在我有两个替换标签,如果我只留下一个为css文件,它工作正常,替换是正确的

另一件事是替换发生在战争打包后,这显然是错误的

相关问题