首页 文章

如何使用jetty 9 maven插件使用deploy-war工作?

提问于
浏览
2

在jetty-9中, mvn jetty:deploy-war 无法启动Web应用程序 . Maven刚刚结束构建,而我希望它可以阻止运行的jetty服务器 . 根据日志记录输出,jetty maven插件会在端口8080上启动连接器,并启动WebAppContext . 它似乎无法将端口绑定到上下文 .

重现步骤:

创建一个Web应用程序: mvn archetype:generate -DinteractiveMode=false -DarchetypeArtifactId=maven-archetype-webapp -DgroupId=jetty -DartifactId=jetty-demo

将此插件部分添加到pom:

<build>
    <plugins>
        <plugin>
            <groupId>org.eclipse.jetty</groupId>
            <artifactId>jetty-maven-plugin</artifactId>
            <version>9.2.10.v20150310</version>
        </plugin>
    </plugins>
    ...
</build>

执行:

mvn package

mvn jetty:deploy-war 这应该启动Web应用程序然后阻止,但它只是结束构建

使用jetty-8一切正常:

<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>8.1.16.v20140903</version>

注意: mvn jetty:run-war 在jetty 9中按预期工作 . 这与deploy-war相同,但它会在部署之前触发jetty来构建战争

参考:the jetty-9 maven plugin manual . 我调试了码头启动过程,但到目前为止没有运气 .

1 回答

相关问题