执行org.eclipse.jetty时缺少必需的类:jetty-maven-plugin:9.2.3.v20140905:run:javax / ws / rs / client / RxInvokerProvider

时间:2018-03-19 14:15:47

标签: java maven jetty pom.xml

您好我继续收到此错误消息

 A required class was missing while executing org.eclipse.jetty:jetty-maven-plugin:9.2.3.v20140905:run: javax/ws/rs/client/RxInvokerProvider

我试图删除maven repo所以它被迫下载库agian但没有结果。如果我手动添加这种依赖关系,它就会抱怨另一件事情,等等,这让我觉得别的东西导致了这种情况。

任何人都有任何线索?这是我的pom.xml以及

<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
    <parent>
        <groupId>se.hrmsoftware.hrm</groupId>
        <artifactId>sleepy-oyster-projects</artifactId>
        <version>1.2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<packaging>war</packaging>

<artifactId>sleepy-common-ws</artifactId>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.glassfish.jersey</groupId>
            <artifactId>jersey-bom</artifactId>
            <version>${jersey.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

<dependencies>
    <dependency>
        <groupId>org.glassfish.jersey.containers</groupId>
        <!-- if your container implements Servlet API older than 3.0, use "jersey-container-servlet-core"  -->
        <artifactId>jersey-container-servlet-core</artifactId>
        <version>2.17</version>
    </dependency>
    <dependency>
        <groupId>org.glassfish.jersey.media</groupId>
        <artifactId>jersey-media-json-jackson</artifactId>
        <version>2.17</version>
    </dependency>

    <dependency>
        <groupId>se.hrmsoftware.hrm</groupId>
        <artifactId>sleepy-commons</artifactId>
        <version>${project.version}</version>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
                <webXml>src/main/webapp/WEB-INF/web.xml</webXml>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.5.1</version>
            <inherited>true</inherited>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
    </plugins>
</build>
<properties>
    <jersey.version>2.26</jersey.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
</project>

此项目一直在运作,但现在它不再启动了。

这是maven依赖树

    se.hrmsoftware.hrm:sleepy-common-ws:war:1.2-SNAPSHOT
[INFO] +- org.glassfish.jersey.containers:jersey-container-servlet-core:jar:2.17:compile
[INFO] |  +- org.glassfish.hk2.external:javax.inject:jar:2.4.0-b10:compile
[INFO] |  +- org.glassfish.jersey.core:jersey-common:jar:2.26:compile
[INFO] |  |  +- javax.annotation:javax.annotation-api:jar:1.2:compile
[INFO] |  |  \- org.glassfish.hk2:osgi-resource-locator:jar:1.0.1:compile
[INFO] |  +- org.glassfish.jersey.core:jersey-server:jar:2.26:compile
[INFO] |  |  +- org.glassfish.jersey.core:jersey-client:jar:2.26:compile
[INFO] |  |  +- org.glassfish.jersey.media:jersey-media-jaxb:jar:2.26:compile
[INFO] |  |  \- javax.validation:validation-api:jar:1.1.0.Final:compile
[INFO] |  \- javax.ws.rs:javax.ws.rs-api:jar:2.0.1:compile
[INFO] +- org.glassfish.jersey.media:jersey-media-json-jackson:jar:2.17:compile
[INFO] |  +- org.glassfish.jersey.ext:jersey-entity-filtering:jar:2.26:compile
[INFO] |  +- com.fasterxml.jackson.jaxrs:jackson-jaxrs-base:jar:2.3.2:compile
[INFO] |  |  +- com.fasterxml.jackson.core:jackson-core:jar:2.3.2:compile
[INFO] |  |  \- com.fasterxml.jackson.core:jackson-databind:jar:2.3.2:compile
[INFO] |  +- com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:jar:2.3.2:compile
[INFO] |  |  \- com.fasterxml.jackson.module:jackson-module-jaxb-annotations:jar:2.3.2:compile
[INFO] |  \- com.fasterxml.jackson.core:jackson-annotations:jar:2.3.2:compile
[INFO] \- se.hrmsoftware.hrm:sleepy-commons:jar:1.2-SNAPSHOT:compile
[INFO]    +- org.glassfish.jersey.containers:jersey-container-servlet:jar:2.26:compile
[INFO]    +- net.sourceforge.jtds:jtds:jar:1.3.1:compile
[INFO]    +- com.microsoft.sqlserver:mssql-jdbc:jar:6.2.2.jre8:compile
[INFO]    +- org.slf4j:slf4j-api:jar:1.7.12:compile
[INFO]    +- jcifs:jcifs:jar:1.3.17:compile
[INFO]    |  \- javax.servlet:servlet-api:jar:2.4:compile
[INFO]    +- org.slf4j:slf4j-simple:jar:1.7.12:compile
[INFO]    +- commons-logging:commons-logging:jar:1.1.1:compile
[INFO]    +- com.mchange:c3p0:jar:0.9.5.1:compile
[INFO]    |  \- com.mchange:mchange-commons-java:jar:0.2.10:compile
[INFO]    +- commons-net:commons-net:jar:3.3:compile
[INFO]    +- org.springframework:spring-jdbc:jar:4.1.6.RELEASE:compile
[INFO]    |  +- org.springframework:spring-beans:jar:4.1.6.RELEASE:compile
[INFO]    |  +- org.springframework:spring-core:jar:4.1.6.RELEASE:compile
[INFO]    |  \- org.springframework:spring-tx:jar:4.1.6.RELEASE:compile
[INFO]    \- com.vaadin:vaadin-server:jar:7.5.5:compile
[INFO]       +- com.vaadin:vaadin-sass-compiler:jar:0.9.12:compile
[INFO]       |  +- org.w3c.css:sac:jar:1.3:compile
[INFO]       |  \- com.vaadin.external.flute:flute:jar:1.3.0.gg2:compile
[INFO]       +- com.vaadin:vaadin-shared:jar:7.5.5:compile
[INFO]       |  +- com.vaadin.external.streamhtmlparser:streamhtmlparser-jsilver:jar:0.0.10.vaadin1:compile
[INFO]       |  \- com.vaadin.external.google:guava:jar:16.0.1.vaadin1:compile
[INFO]       \- org.jsoup:jsoup:jar:1.8.1:compile

2 个答案:

答案 0 :(得分:2)

javax.ws.rs.client.RxInvokerProvider是在JAX RS API 2.1中引入的

然而你的依赖树有......

[INFO] |  \- javax.ws.rs:javax.ws.rs-api:jar:2.0.1:compile

你的依赖性很差。

答案 1 :(得分:1)

每当遇到“此项目一直在运作但现在它不再启动它了。”你需要弄清楚项目破坏时发生的变化。为此,您需要源代码控制(如git,mercurial或bazaar)。检查提交,直到找到提交之前的工作,而不是之后。然后看看发生了什么变化。

如果您使用git,那么git bisect可能会有所帮助。有关如何执行此操作,请参阅https://git-scm.com/book/en/v2/Git-Tools-Debugging-with-Git#_binary_search

如果您不使用源代码管理,现在是重新考虑的好时机。