行家码头 - org.mortbay.jetty VS org.eclipse.jetty(mav

2019-07-21 12:13发布

我试图用码头主办使用maven一个简单的HelloWorld的servlet。 我很困惑。

我跟着这些指示 ,但是当我发出mvn jetty:run ,我得到以下错误:

[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)]

为了增加混乱,当我搜索的例子网页,有的指org.mortbay.jetty ,和其他人org.eclipse.jetty 。 我认为Eclipse版本是最新的,不是吗?

有没有说明每一种托管的依赖关系的任何文件的maven回购是什么意思? 以及他们如何可以用吗?

修改版本号后9.0.0.v20130308 ,我得到一个不同的错误:

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

这里是我的更新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>

Answer 1:

码头已搬来搬去了很多-看历史 。 Eclipse是最近的家庭,如2009年的Maven的文物已经一路上改变了,所以你的搜索是旧版本的码头和Maven插件查找文档。

最新的(V9) 码头- Maven的插件文件中列出的依赖为:

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

码头延续码头,JSP其他图书馆是码头项目刚子模块。 有些文档存在于旧的维基的码头7和8,但我什么都看不到更新的V9呢。 模块化设计是其代码的码头开发者组织成已全部单独提供的,可能要使用开发商只想码头的一小部分明确定义模块。



Answer 2:

这次日食版本是最近的一个。 按照他们的网站上的说明进行操作。



Answer 3:

下面是我的工作配置。 采用了最新的码头版本。

<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>


文章来源: maven jetty - org.mortbay.jetty vs org.eclipse.jetty
标签: maven Jetty