2013-03-13 15 views
25

Próbuję użyć pomostu do hostowania prostego serwletu helloworld za pomocą maven. Jestem bardzo zmieszany.maven pomost - org.mortbay.jetty vs org.eclipse.jetty

Śledziłem te instructions, ale kiedy wydać mvn jetty:run, pojawia się następujący błąd:

[ERROR] No plugin found for prefix 'jetty' in the current project and in the plugin groups [org.apache.maven.plugins, org.codehaus.mojo] available from the repositories [local (/Users/abc/.m2/repository), central (http://repo.maven.apache.org/maven2)] 

dodać do zamieszania, podczas wyszukiwania w internecie przykładów, niektóre odnoszą się do org.mortbay.jetty i inni do org.eclipse.jetty. Myślałem, że wersja Eclipse jest najnowsza, nie?

Czy istnieje dokumentacja opisująca, co każda z zależności hostowana pod numerem maven repo oznacza? I w jaki sposób można z nich korzystać?

Po zmodyfikowaniu numer wersji do 9.0.0.v20130308, otrzymuję inny błąd:

Unable to load the mojo 'run' in the plugin 'org.eclipse.jetty:jetty-maven-plugin:9.0.0.v20130308' due to an API incompatibility: org.codehaus.plexus.component.repository.exception.ComponentLookupException: org/eclipse/jetty/maven/plugin/JettyRunMojo : Unsupported major.minor version 51.0 

Tu jest mój zaktualizowany pom:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
     <modelVersion>4.0.0</modelVersion> 
     <groupId>com.neon.research</groupId> 
     <artifactId>jetty</artifactId> 
     <packaging>war</packaging> 
     <version>1.0-SNAPSHOT</version> 
     <name>jetty Maven Webapp</name> 
     <url>http://maven.apache.org</url> 
     <properties> 
       <jetty.version></jetty.version> 
     </properties> 
     <dependencies> 
       <dependency> 
         <groupId>org.eclipse.jetty.orbit</groupId> 
         <artifactId>javax.servlet</artifactId> 
         <version>3.0.0.v201112011016</version> 
         <scope>provided</scope> 
       </dependency> 
     </dependencies> 

     <build> 
       <plugins> 
         <plugin> 
           <groupId>org.eclipse.jetty</groupId> 
           <artifactId>jetty-maven-plugin</artifactId> 
           <version>9.0.0.v20130308</version> 
         </plugin> 
         <plugin> 
           <artifactId>maven-compiler-plugin</artifactId> 
           <configuration> 
             <source>1.6</source> 
             <target>jsr14</target> 
           </configuration> 
           <executions> 
             <execution> 
               <id>test-compile</id> 
               <phase>process-test-sources</phase> 
               <goals> 
                 <goal>testCompile</goal> 
               </goals> 
               <configuration> 
                 <source>1.6</source> 
                 <target>1.6</target> 
               </configuration> 
             </execution> 
           </executions> 
         </plugin> 
       </plugins> 
     </build> 
</project> 
+0

czy określono wtyczkę groupId? – ben75

+0

Tak - oto co mam: \t \t \t \t \t \t \t \t \t \t org.eclipse.jetty \t \t \t \t molo-maven-plugin \t \t \t \t 9.0.0 \t \t \t \t \t \t hba

+0

wersja jest nieprawidłowy, proszę zobaczyć moje zaktualizowaną odpowiedź i komentarz. – andyb

Odpowiedz

20

Molo bardzo się poruszyło - patrz: History. Eclipse jest najnowszym domem, od 2009 roku. Artefakty Maven zostały przemianowane po drodze, więc twoje poszukiwania znajdują dokumentację dla starszych wersji Jetty i dodatku do maven.

Najnowszy (v9) jetty-maven-plugin documentation list zależność jak:

<plugin> 
    <groupId>org.eclipse.jetty</groupId> 
    <artifactId>jetty-maven-plugin</artifactId> 
    <version>9.0.0.v20130308</version> <!-- latest at time of writing --> 
</plugin> 

Pozostałe biblioteki jak pomost zaprzestania lub pomost-jsp to tylko sub-moduły Jetty Project. Niektóre dokumenty istnieją na older wiki dla Jetty 7 i 8, ale nie widzę jeszcze niczego zaktualizowanego dla wersji v9. Modułowa konstrukcja to organizacja dewelopera Jetty, która tworzy ich kod w dobrze zdefiniowane moduły, które zostały udostępnione osobno dla programistów, którzy mogą chcieć skorzystać z niewielkiej części Jetty.

+0

Dokumentacja Jetty 9 znajduje się tutaj: http://www.eclipse.org/jetty/documentation/current/ –

+0

@jessemcconnell dzięki, dołączyłem do tego już. Próbowałem wyjaśnić, że nie ma to jak stara dokumentacja wiki dla wersji 9. Brak strony z diagramem zależności i bez oddzielnej strony dla [Kontynuacji] (http://wiki.eclipse.org/Jetty/Feature/Continuations) na przykład. – andyb

+0

Widzę, że nadal pobieramy dokumentację do ustawień docbook, do których można dodać na github (linki na dole strony). Wszystko, czego ci brakuje, chciałbyś dodać, proszę otworzyć błąd na bugs.eclipse.org w RT, a dostaniemy go ... lub wesprzeć :) –

3

Wersja zaćmienie jest nowsza jeden. Postępuj zgodnie z instrukcjami na ich stronie.

0

Oto konfiguracja robocza dla mnie. Używa najnowszej wersji Jetty.

<plugin> 
    <groupId>org.eclipse.jetty</groupId> 
    <artifactId>jetty-maven-plugin</artifactId> 
    <version>9.4.0.v20161208</version> 
    <configuration> 
     <scanIntervalSeconds>0</scanIntervalSeconds> 
     <contextXml>${basedir}/src/it/resources/jetty-context.xml</contextXml> 
     <webApp> 
      <contextPath>/yourContextPath</contextPath> 
     </webApp> 
     <contextHandlers> 
     <contextHandler implementation="org.eclipse.jetty.webapp.WebAppContext"> 
      <war>your/path.war</war> 
      <contextPath>/yourPath</contextPath> 
     </contextHandler> 
     </contextHandlers> 
     <classesDirectory></classesDirectory> 
     <webAppSourceDirectory></webAppSourceDirectory> 
    </configuration> 
</plugin> 
Powiązane problemy