10

是否有一个 Maven 插件只结合了 js 和 css 资源但不做任何缩小、模糊、压缩等?只是简单的资源连接。

4

4 回答 4

6

对您的项目进行以下更改:

  1. 在您的pom.xml中,<dependencies>标记,放置:

    <!-- JAVASCRIPT COMBINATION -->
    <dependency>
        <groupId>ro.isdc.wro4j</groupId>
        <artifactId>wro4j-core</artifactId>
    </dependency>
    
  2. 在您的pom.xml中,<plugins>标记,放置:

    <plugin>
        <groupId>ro.isdc.wro4j</groupId>
        <artifactId>wro4j-maven-plugin</artifactId>
        <version>1.4.3</version>
        <executions>
            <execution>
                <phase>process-resources</phase>
                <goals>
                    <goal>run</goal>
                </goals>
            </execution>
        </executions>
        <configuration>
            <targetGroups>allDev</targetGroups>
            <destinationFolder>${basedir}/src/main/webapp/</destinationFolder>
            <contextFolder>${basedir}/src/main/webapp/</contextFolder>
        </configuration>
    </plugin>
    
  3. 在您的pom.xml(或父pom.xml<dependencyManagement>标签中,放置:

    <!-- JAVASCRIPT COMBINATION -->
    <dependency>
        <groupId>ro.isdc.wro4j</groupId>
        <artifactId>wro4j-core</artifactId>
        <version>1.8.0</version>
    </dependency>
    
  4. 在下面创建一个wro.xml/project/src/main/webapp/WEB-INF并放置如下内容:

    <?xml version="1.0" encoding="UTF-8"?>
    <groups xmlns="http://www.isdc.ro/wro">  
        <group name="allDev">  
            <js minimize="false">/my1stJsFolder/*.js</js>
            <js minimize="false">/my2ndJsFolder/*.js</js>
            <js minimize="false">/someFileDirectlyUnderWEBINF.js</js>
        </group>
    </groups>  
    
  5. web.xml中插入:

    <filter>
        <filter-name>WebResourceOptimizer</filter-name>
        <filter-class>ro.isdc.wro.http.WroFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>WebResourceOptimizer</filter-name>
        <url-pattern>/wro/*</url-pattern>
    </filter-mapping>
    

allDev.js将在/project/src/main/webapp.

我还不确定如何告诉 wro4j 只在目标中生成一个(现在您有两个 - 一个在项目源文件中,一个在目标文件中)。

使用 yui 插件压缩时,我只得到一个目标。但这对你来说应该不是什么大问题。

更多:

另外

如果您对资源处理有任何问题,请尝试添加到<build>标签:

<resources>
    <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filtering>
    </resource>
</resources>

并且还要<plugins>添加

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <configuration>
        <nonFilteredFileExtensions>
            <nonFilteredFileExtension>pdf</nonFilteredFileExtension>
            <nonFilteredFileExtension>swf</nonFilteredFileExtension>
            <nonFilteredFileExtension>jpg</nonFilteredFileExtension>
            <nonFilteredFileExtension>jpeg</nonFilteredFileExtension>
            <nonFilteredFileExtension>class</nonFilteredFileExtension>
            <nonFilteredFileExtension>jks</nonFilteredFileExtension>
            <nonFilteredFileExtension>exe</nonFilteredFileExtension>
            <nonFilteredFileExtension>wmv</nonFilteredFileExtension>
            <nonFilteredFileExtension>jar</nonFilteredFileExtension>
            <nonFilteredFileExtension>zip</nonFilteredFileExtension>
            <nonFilteredFileExtension>gz</nonFilteredFileExtension>
        </nonFilteredFileExtensions>
    </configuration>
</plugin>  
于 2012-12-31T15:04:40.937 回答
2

我认为大多数工具都可以让你关闭缩小。

这是另一对看起来很有趣的夫妇:

http://jawr.java.net/

https://code.google.com/p/wro4j/

于 2012-09-02T14:42:39.867 回答
0

我已经使用 YUI Compressor 多年了。以前在 ANT 中做,但也有一个 maven 插件。以下链接是聚合的示例:

http://alchim.sourceforge.net/yuicompressor-maven-plugin/ex_aggregation.html

于 2012-08-31T14:35:38.883 回答
0

看起来正确:

http://hammerfest.sourceforge.net/maven-javascript-plugin/merge-mojo.html

于 2012-08-31T13:53:27.403 回答