如何使用Maven将JQuery安装到我的Web应用程序中?

时间:2011-11-22 21:22:17

标签: maven-2 maven maven-3

我正在考虑使用Maven 3进行一些Web开发。我知道如何使用maven来解决基于java的jar文件。我如何使用maven来解决JavaScript依赖关系,例如我想让maven自动将jquery放入我的webapp / js文件夹中?

是否可以使用Maven 3进行转换JavaScript依赖?

5 个答案:

答案 0 :(得分:5)

您可以在指定的路径上创建自己的“war”,其中包含jquery。

然后将该战争添加到您的真实Web应用程序中。 Maven应该合并它。我认为它被称为“处理叠加”。

我正在使用相同的GWT应用程序,其中javascript是由maven插件生成的,并且运行良好。

答案 1 :(得分:3)

也许WebJars可以帮到你:

  

WebJars是打包到JAR(Java Archive)文件中的客户端Web库(例如jQuery和Bootstrap)。

     
      
  • 明确且轻松地管理基于JVM的Web应用程序中的客户端依赖
  •   
  • 使用基于JVM的构建工具(例如Maven,Gradle和SBT)下载客户端依赖项
  •   
  • 了解您正在使用的客户端依赖项
  •   
  • 神奇地出现传递依赖
  •   

警告:WebJars不会将jquery文件放在webapp/js文件夹中。请阅读documentation以了解它如何与一些流行的框架一起使用。

答案 2 :(得分:1)

尝试将此添加到您的pom.xml文件中。它对我有用:

<dependency>
    <groupId>com.efsavage.jquery</groupId>
    <artifactId>jquery-maven</artifactId>
    <version>1.7.2</version>
</dependency>

这个库为您提供了一种将jQuery作为Maven依赖项放入项目的方法,这意味着您不必将这些第三方文件包含在您自己的源代码管理中。

来源:here

答案 3 :(得分:0)

可能你应该使用CDN之一将外部javascript库包含到你的webapps中? 例如。对于jQuery,您可以从http://docs.jquery.com/Downloading_jQuery#CDN_Hosted_jQuery

的任何网址中简单地添加它

来自CDN的libs也会降低您的服务器带宽使用率。

答案 4 :(得分:0)

您可以在里面使用您的jquery版本在repo中创建一个新的zip工件。

然后使用maven war插件将其部署到你的战争中。

仔细查看<targetPath><includes>,确保在您需要的地方部署所需内容:)

<plugin>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.3</version>
    <configuration>
       <overlays>
          <overlay>
             <groupId>yourgroupid</groupId>
             <artifactId>yourJqueryArtifactId</artifactId>
             <type>zip</type>
             <targetPath/>
             <includes>
                <include>js/jquery.js</include>
             </includes>
          </overlay>
       </overlays>
    </configuration>
 </plugin>

上一个配置假设你的zip中有一个名为'js'的目录,里面有jquery.js。它将在js / jquery.js的战争中解压缩

更多信息here