Z powodzeniem używam mvn tomcat7-maven-plugin:run -am -pl :foo
do uruchomienia pojedynczego projektu na raz w Tomcat like is shown here. Teraz chciałbym mieć wiele modułów uruchamianych pod tym samym portem, ale w różnych kontekstach. Na przykład, chciałbym mieć:Jak korzystać z maven plugin tomcat7: uruchomić z wieloma kontekstami (WAR)?
/ => foo.war
/bar => bar.war
Oto przykład pom.xml snippet że pracuję z:
<project><!-- ... -->
<build><!-- ... -->
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.0-SNAPSHOT</version>
<configuration>
<path>/</path>
<port>8080</port>
<addContextWarDependencies>true</addContextWarDependencies>
<addWarDependenciesInClassloader>true</addWarDependenciesInClassloader>
<warSourceDirectory>${project.build.directory}/${project.build.finalName}/</warSourceDirectory>
</configuration>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>bar</artifactId>
<version>${project.version}</version>
<type>war</type>
<scope>tomcat</scope>
</dependency>
</dependencies>
</plugin>
</plugins>
</pluginManagement>
</build>
<pluginRepositories>
<pluginRepository>
<id>apache.snapshots</id>
<name>Apache Snapshots</name>
<url>http://repository.apache.org/content/groups/snapshots-group/</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</project>
Czy to możliwe dzięki wtyczce tomcat7-maven-plugin:run
? Staram się znaleźć poprawną składnię, aby dobrze się z nią grało. Po uruchomieniu polecenia maven
uruchamia ono tylko pierwszą znalezioną w hierarchii projektu. A jeśli uruchomię je z <fork>true</fork>
lub oczywiście z różnych terminali, otrzymam "java.net.BindException: Address already in use: 8080".
Zakładam, że jest to część konfiguracji, która definiuje kontekst uruchamiany w bieżącym module jako root? to znaczy, w jaki sposób dodać moje "bar.war" jako "/ bar" do pliku pom.xml mojego "foo.war" jako "/"? To nie działa bezpośrednio z powodu zależności, ale wciąż z nim gram. – mckamey
Nie mogę sprawiać wrażenia, że radzę sobie z zależnościami "bar.war". Próbowałem wyraźnie dodawać je tak jak ten http://stackoverflow.com/a/9928987/43217, ale bez powodzenia. – mckamey
Ponadto, jeśli spróbuję dodać "bar.war" jako zależność zakresu "tomcat" do samego modułu, wówczas kompiluje on najpierw, a komenda tomcat7: run próbuje wykonać to zamiast tego. – mckamey