运行jetty-maven-plugin时,出现错误

本文解决了一个关于 Jetty Maven 插件在运行过程中出现的错误问题,主要原因是 POM 文件中指定的 JDK 版本与实际运行环境不匹配导致。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[ERROR] Failed to execute goal org.eclipse.jetty:jetty-maven-plugin:9.4.0.v20161208:run (default-cli) on project kind-perm-web: Execution default-cli of goal org.eclipse.jetty:jetty-maven-plugin:9.4.0.v20161208:run failed: Unable to load the mojo 'run' in the plugin 'org.eclipse.jetty:jetty-maven-plugin:9.4.0.v20161208' due to an API incompatibility: org.codehaus.plexus.component.repository.exception.ComponentLookupException: org/eclipse/jetty/maven/plugin/JettyRunMojo : Unsupported major.minor version 52.0
[ERROR] -----------------------------------------------------
[ERROR] realm =    plugin>org.eclipse.jetty:jetty-maven-plugin:9.4.0.v20161208
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
[ERROR] urls[0] = file:/F:/maven/repository/org/eclipse/jetty/jetty-maven-plugin/9.4.0.v20161208/jetty-maven-plugin-9.4.0.v20161208.jar
[ERROR] urls[1] = file:/F:/maven/repository/org/sonatype/sisu/sisu-inject-bean/2.1.1/sisu-inject-bean-2.1.1.jar
[ERROR] urls[2] = file:/F:/maven/repository/org/sonatype/sisu/sisu-guice/2.9.4/sisu-guice-2.9.4-no_aop.jar
[ERROR] urls[3] = file:/F:/maven/repository/org/codehaus/plexus/plexus-utils/2.0.6/plexus-utils-2.0.6.jar
[ERROR] urls[4] = file:/F:/maven/repository/org/sonatype/aether/aether-util/1.11/aether-util-1.11.jar
[ERROR] urls[5] = file:/F:/maven/repository/org/codehaus/plexus/plexus-interpolation/1.14/plexus-interpolation-1.14.jar
[ERROR] urls[6] = file:/F:/maven/repository/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar
[ERROR] urls[7] = file:/F:/maven/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar
[ERROR] urls[8] = file:/F:/maven/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
[ERROR] urls[9] = file:/F:/maven/repository/org/apache/maven/plugin-tools/maven-plugin-tools-api/3.4/maven-plugin-tools-api-3.4.jar
[ERROR] urls[10] = file:/F:/maven/repository/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar
[ERROR] urls[11] = file:/F:/maven/repository/org/eclipse/jetty/jetty-util/9.4.0.v20161208/jetty-util-9.4.0.v20161208.jar
[ERROR] urls[12] = file:/F:/maven/repository/org/eclipse/jetty/jetty-webapp/9.4.0.v20161208/jetty-webapp-9.4.0.v20161208.jar
[ERROR] urls[13] = file:/F:/maven/repository/org/eclipse/jetty/jetty-xml/9.4.0.v20161208/jetty-xml-9.4.0.v20161208.jar
[ERROR] urls[14] = file:/F:/maven/repository/org/eclipse/jetty/jetty-servlet/9.4.0.v20161208/jetty-servlet-9.4.0.v20161208.jar
[ERROR] urls[15] = file:/F:/maven/repository/org/eclipse/jetty/jetty-quickstart/9.4.0.v20161208/jetty-quickstart-9.4.0.v20161208.jar
[ERROR] urls[16] = file:/F:/maven/repository/org/eclipse/jetty/jetty-jaas/9.4.0.v20161208/jetty-jaas-9.4.0.v20161208.jar
[ERROR] urls[17] = file:/F:/maven/repository/org/eclipse/jetty/jetty-security/9.4.0.v20161208/jetty-security-9.4.0.v20161208.jar
[ERROR] urls[18] = file:/F:/maven/repository/org/eclipse/jetty/jetty-plus/9.4.0.v20161208/jetty-plus-9.4.0.v20161208.jar
[ERROR] urls[19] = file:/F:/maven/repository/org/eclipse/jetty/jetty-jndi/9.4.0.v20161208/jetty-jndi-9.4.0.v20161208.jar
[ERROR] urls[20] = file:/F:/maven/repository/org/eclipse/jetty/jetty-server/9.4.0.v20161208/jetty-server-9.4.0.v20161208.jar
[ERROR] urls[21] = file:/F:/maven/repository/javax/servlet/javax.servlet-api/3.1.0/javax.servlet-api-3.1.0.jar
[ERROR] urls[22] = file:/F:/maven/repository/org/eclipse/jetty/jetty-http/9.4.0.v20161208/jetty-http-9.4.0.v20161208.jar
[ERROR] urls[23] = file:/F:/maven/repository/org/eclipse/jetty/jetty-io/9.4.0.v20161208/jetty-io-9.4.0.v20161208.jar
[ERROR] urls[24] = file:/F:/maven/repository/org/eclipse/jetty/jetty-jmx/9.4.0.v20161208/jetty-jmx-9.4.0.v20161208.jar
[ERROR] urls[25] = file:/F:/maven/repository/org/eclipse/jetty/jetty-annotations/9.4.0.v20161208/jetty-annotations-9.4.0.v20161208.jar
[ERROR] urls[26] = file:/F:/maven/repository/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2.jar
[ERROR] urls[27] = file:/F:/maven/repository/org/ow2/asm/asm/5.1/asm-5.1.jar
[ERROR] urls[28] = file:/F:/maven/repository/org/ow2/asm/asm-commons/5.1/asm-commons-5.1.jar
[ERROR] urls[29] = file:/F:/maven/repository/org/ow2/asm/asm-tree/5.1/asm-tree-5.1.jar
[ERROR] urls[30] = file:/F:/maven/repository/org/eclipse/jetty/websocket/javax-websocket-server-impl/9.4.0.v20161208/javax-websocket-server-impl-9.4.0.v20161208.jar
[ERROR] urls[31] = file:/F:/maven/repository/org/eclipse/jetty/websocket/javax-websocket-client-impl/9.4.0.v20161208/javax-websocket-client-impl-9.4.0.v20161208.jar
[ERROR] urls[32] = file:/F:/maven/repository/javax/websocket/javax.websocket-api/1.0/javax.websocket-api-1.0.jar
[ERROR] urls[33] = file:/F:/maven/repository/org/eclipse/jetty/websocket/websocket-server/9.4.0.v20161208/websocket-server-9.4.0.v20161208.jar
[ERROR] urls[34] = file:/F:/maven/repository/org/eclipse/jetty/websocket/websocket-common/9.4.0.v20161208/websocket-common-9.4.0.v20161208.jar
[ERROR] urls[35] = file:/F:/maven/repository/org/eclipse/jetty/websocket/websocket-api/9.4.0.v20161208/websocket-api-9.4.0.v20161208.jar
[ERROR] urls[36] = file:/F:/maven/repository/org/eclipse/jetty/websocket/websocket-client/9.4.0.v20161208/websocket-client-9.4.0.v20161208.jar
[ERROR] urls[37] = file:/F:/maven/repository/org/eclipse/jetty/jetty-client/9.4.0.v20161208/jetty-client-9.4.0.v20161208.jar
[ERROR] urls[38] = file:/F:/maven/repository/org/eclipse/jetty/websocket/websocket-servlet/9.4.0.v20161208/websocket-servlet-9.4.0.v20161208.jar
[ERROR] urls[39] = file:/F:/maven/repository/org/eclipse/jetty/apache-jsp/9.4.0.v20161208/apache-jsp-9.4.0.v20161208.jar
[ERROR] urls[40] = file:/F:/maven/repository/org/eclipse/jetty/toolchain/jetty-schemas/3.1/jetty-schemas-3.1.jar
[ERROR] urls[41] = file:/F:/maven/repository/org/mortbay/jasper/apache-jsp/8.5.5/apache-jsp-8.5.5.jar
[ERROR] urls[42] = file:/F:/maven/repository/org/mortbay/jasper/apache-el/8.5.5/apache-el-8.5.5.jar
[ERROR] urls[43] = file:/F:/maven/repository/org/eclipse/jdt/core/compiler/ecj/4.4.2/ecj-4.4.2.jar
[ERROR] urls[44] = file:/F:/maven/repository/org/eclipse/jetty/apache-jstl/9.4.0.v20161208/apache-jstl-9.4.0.v20161208.jar
[ERROR] urls[45] = file:/F:/maven/repository/org/apache/taglibs/taglibs-standard-spec/1.2.5/taglibs-standard-spec-1.2.5.jar
[ERROR] urls[46] = file:/F:/maven/repository/org/apache/taglibs/taglibs-standard-impl/1.2.5/taglibs-standard-impl-1.2.5.jar
[ERROR] urls[47] = file:/F:/maven/repository/javax/transaction/javax.transaction-api/1.2/javax.transaction-api-1.2.jar
[ERROR] Number of foreign imports: 1
[ERROR] import: Entry[import  from realm ClassRealm[maven.api, parent: null]]

错误原因是:

pom文件中配置的是jdk1.8,而实际环境是jdk1.7


修改方式修改为:


启动成功!!!

### 使用 Jetty Maven Plugin 的方法 Jetty 是一种轻量级的 Java Web 容器,`jetty-maven-plugin` 插件允许开发者通过 Maven 构建工具快速启动嵌入式的 Jetty 服务器来运行 Web 应用程序。以下是关于如何在 Maven 项目中配置和使用 `jetty-maven-plugin` 的详细介绍。 #### 配置插件 要在 Maven 项目中使用 `jetty-maven-plugin`,需要将其添加到项目的 `pom.xml` 文件中的 `<build>` 节点下: ```xml <build> <plugins> <plugin> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>9.4.43.v20210629</version> <!-- 版本号可根据需求调整 --> <configuration> <scanIntervalSeconds>10</scanIntervalSeconds> <!-- 自动扫描文件变化的间间隔 --> <webApp> <contextPath>/myapp</contextPath> <!-- 设置应用上下文路径 --> </webApp> <httpConnector> <port>8081</port> <!-- 修改默认端口为 8081 --> </httpConnector> </configuration> </plugin> </plugins> </build> ``` 上述配置说明如下: - **`<groupId>` 和 `<artifactId>`**:定义了使用的插件名称及其所属组。 - **`<version>`**:指定了插件的具体版本号[^1]。 - **`<scanIntervalSeconds>`**:设置自动重新加载应用程序的间间隔(单位秒),适用于开发环境下的热部署功能。 - **`<contextPath>`**:设定访问该 Web 应用的 URL 上下文路径。 - **`<port>`**:更改默认监听端口以避免与其他服务冲突[^3]。 #### 启动 Jetty 服务器 完成以上配置后,在命令行界面切换至项目根目录并执行以下指令即可启动 Jetty 服务器: ```bash mvn jetty:run ``` 此操作会依据之前所设参数初始化一个基于 Jetty 的 HTTP Server 实例,并使其处于等待请求状态直至手动终止进程为止[^2]。 如果遇到类似于 `[ERROR] Failed to execute goal...Address already in use` 这样的错误提示,则可能是因为目标端口被其他程序占用所致;此可以考虑更换未被占用的新端口号或者关闭占据当前端口的服务实例后再尝试重启 Jetty。 另外值得注意的是,当面对更复杂的场景比如 SSL 支持或是多模块工程集成等情况,还需要进一步扩展相应的配置选项才能满足实际需求。 --- ###
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值