Вот что я делаю, и, кажется, работает нормально.Я использую Eclipse Juno SR2 (Java EE для веб-разработчиков) и Maven 3.0.5, прямо сейчас.(Я не эксперт в Eclipse или Maven, поэтому я уверен, что есть более элегантный способ сделать это. Пожалуйста, дайте мне знать!)
Мы хотим иметь структуру проекта, подобнуюниже, в соответствии с соглашениями Maven:
- src
+-- main
+-- java
+-- js
+-- webapp
+-- WEB-INF
+-- test
+-- java
+-- js
И затем мы хотим развернуть веб-приложение с такой структурой, как:
- /
+-- js
+-- WEB-INF
+-- classes
Ключевой частью Maven pom.xml являетсяв maven-war-plugin, который копирует файлы src / main / js:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.3</version>
<configuration>
<archiveClasses>true</archiveClasses>
<webResources>
<!-- in order to interpolate version from pom into appengine-web.xml -->
<resource>
<directory>${basedir}/src/main/webapp/WEB-INF</directory>
<filtering>true</filtering>
<targetPath>WEB-INF</targetPath>
</resource>
<resource>
<directory>${basedir}/src/main/js</directory>
<filtering>true</filtering>
<targetPath>js</targetPath>
</resource>
</webResources>
</configuration>
</plugin>
(сейчас я использую Google App Engine для своих проектов, поэтому appengine-maven-plugin копируетв моем Java-коде и других ресурсах.) Благодаря этому вы сможете использовать Maven для создания своего проекта.Существуют другие плагины Maven javascript для тестирования, зависимостей и т. Д., Но я думаю, что это базовая функциональность.
На стороне Eclipse есть пара вещей:
- Убедитесь, что при использовании активирован аспект проекта JavaScript.
- В разделе Свойства проекта -> JavaScript -> Включить путь -> вкладка «Источник» нажмите «Добавить папку» и выберите «src / main / js».Затем вы можете удалить любой путь по умолчанию.
- В разделе «Свойства проекта -> Сборка развертывания» добавьте папку / src / main / js и установите путь развертывания соответствующим образом (из моей структуры выше я хочу свой JavaScriptперейти к "/js".
. Я могу управлять своими java-зависимостями и развертывать в AppEngine из Maven, а также кодировать и отлаживать из Eclipse (после некоторого возни с ), иКажется, все работает. Я хотел бы интегрировать мои js-тесты переднего плана с Maven (возможно, с использованием javascript-maven-plugin ), но это задача другого дня.