2015-01-05 3 views
3

Я пытаюсь включить файл xml в pom.xml (maven). Мой pom.xml выглядит somehting любит этотВключая другой файл xml в pom.xml

<?xml version="1.0" encoding="UTF-8"?> 
<project> 
<!-- <xi:include href="minify.xml" xmlns:xi="http://www.w3.org/2003/XInclude"/> 
--> <modelVersion>4.0.0</modelVersion> 
    <groupId>myproject</groupId> 
    <artifactId>myproject</artifactId> 
    <packaging>war</packaging> 
    <version>0.0.1-SNAPSHOT</version> 
    <description></description> 
    <build> 
    <plugins> 

     <plugin> 
     <artifactId>maven-compiler-plugin</artifactId> 
     <version>2.3.2</version> 
     <configuration> 
      <source>1.5</source> 
      <target>1.5</target> 
     </configuration> 
     </plugin> 
    <!-- include plugin tag from other xml file --> 
// I would like maintain one seperate xml file to hold all plugin tags (to reduce pom.xml //file content. 
</plugins> 

Я использую "com.samaxes.maven" к minify css and js files. Но я сохранил файлы css и js во многих отдельных папках. Мне нужно, чтобы включить этот тег ниже неоднократно

<plugin> 
    <groupId>com.samaxes.maven</groupId> 
    <artifactId>minify-maven-plugin</artifactId> 
    <version>1.7.4</version> 
    <executions> 
     <execution> 
      <id>default-minify-1</id> 
      <configuration> 
        <charset>utf-8</charset> 
        <jsEngine>CLOSURE</jsEngine> 
        <skipMerge>true</skipMerge> 
        <nosuffix>true</nosuffix> 
        <!-- <skipMinify>true</skipMinify> --> <!--skips already minfied css fiels --> 

        <cssSourceDir>inc/one/css</cssSourceDir> 
        <cssTargetDir>inc/one/css/mini</cssTargetDir> 
        <cssSourceIncludes> 
         <cssSourceInclude>*.css</cssSourceInclude> 
        </cssSourceIncludes> 

        <jsSourceDir>proj/platform/common/js/</jsSourceDir> 
        <jsTargetDir>proj/platform/common/js/mini</jsTargetDir> 
        <jsSourceIncludes> 
        <jsSourceInclude>*.js</jsSourceInclude> 
        </jsSourceIncludes> 
        <closureCreateSourceMap>true</closureCreateSourceMap> 
      </configuration> 
      <goals> 
       <goal>minify</goal> 
      </goals> 
     </execution> 
    </executions> 
</plugin> 

Я гугл возможного способа включить несколько каталогов, то я решил включить все каталоги, повторив выше сниппета коды. Но позже, чтобы отделить все mifiy, включите в другой XML-файл. Я ищу способ включить XML-тег внутри тега. Кто-то, пожалуйста, помогите мне.

ответ

1

я думаю, что это не так, как Maven следует использовать ..

что вы могли бы сделать, это создать родительский pom.xml со всей глобальной конфигурации плагина внутри секции pluginManagement. то вы можете активировать настроенное выполнение с идентификатором «default-minify-1» во всем своем дочернем pom.xml. конфигурация, но это делается только один раз в родительском pom.xml

Reusing ant-snippets in multi-module maven build см

+0

Спасибо @StefanHeimberg. Теперь я использую компрессор YUI, который решил мою проблему. –

Смежные вопросы