Как установить JQuery в мое веб-приложение с помощью Maven?

Я смотрю на использование Maven 3 для некоторых веб-разработки. Я знаю, как использовать maven для разрешения jar-файлов на основе java. Как использовать maven для разрешения зависимостей JavaScript, например, я хочу, чтобы maven автоматически помещал jquery в папку webapp/js?

можно ли сделать на JavaScript transative зависимостей с помощью Maven 3?

5 ответов


вы можете создать свою собственную "войну", в которой есть jquery на указанном Вами пути.

затем добавьте эту войну в свое реальное веб-приложение. Maven должен объединить его. Я думаю, это называлось что-то вроде "обработка наложения".

Я использую то же самое для некоторых приложений GWT, где javascript генерируется плагином maven, и он хорошо работает.


возможно WebJars могу помочь вам:

WebJars являются клиентскими веб-библиотеками (например, jQuery & Bootstrap), упакованными в файлы JAR (Java Archive).

  • явно и легко управлять зависимостями на стороне клиента в веб-приложениях на основе JVM
  • используйте инструменты сборки на основе JVM (например, Maven, Gradle и SBT) для загрузки зависимостей на стороне клиента
  • знать, какие зависимости на стороне клиента вы используете
  • транзитивные зависимости волшебным образом появляются

предостережение: WebJars не помещает файлы jquery в . Пожалуйста, прочитайте документация чтобы увидеть, как он используется с некоторых популярных платформ.


попробуйте добавить это в свой pom.XML-файл. Это сработало для меня:

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

эта библиотека дает вам возможность отбросить jQuery в ваш проект как зависимость Maven, что означает, что вам не нужно включать эти сторонние файлы в свой собственный исходный элемент управления.

источник : здесь


может быть, вы должны использовать один из CDN включить внешние JavaScript-библиотеки в ваши webapps? Например. для jQuery вы можете просто включить его из любого из URL-адресов изhttp://docs.jquery.com/Downloading_jQuery#CDN_Hosted_jQuery

также libs от CDN уменьшит использование пропускной способности сервера.


вы можете создать новый артефакт zip в своем РЕПО с вашей версией jquery внутри.

затем используйте плагин 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>

предыдущая конфигурация предполагает, что у вас есть каталог под названием " js " в вашем zip с jquery.js внутри. Он будет распакован в вашей войне в js / jquery.js

Подробнее здесь