web-dev-qa-db-ja.com

java.lang.NoClassDefFoundError:com / fasterxml / jackson / core / JsonFactory

私はYouTube broadcastサンプルの例。サンプルを作成しましたJava Project&必要なjarを追加しました。しかし、プロジェクトを実行しようとすると、例外がスローされます。

例外:

Throwable: com/fasterxml/jackson/core/JsonFactory
Java.lang.NoClassDefFoundError: com/fasterxml/jackson/core/JsonFactory
    at com.google.api.client.json.jackson2.JacksonFactory.<init>(JacksonFactory.Java:44)
    at com.google.api.services.samples.youtube.cmdline.live.Auth.<clinit>(Auth.Java:35)
    at com.google.api.services.samples.youtube.cmdline.live.CreateBroadcast.main(CreateBroadcast.Java:55)
Caused by: Java.lang.ClassNotFoundException: com.fasterxml.jackson.core.JsonFactory
    at Java.net.URLClassLoader$1.run(URLClassLoader.Java:366)
    at Java.net.URLClassLoader$1.run(URLClassLoader.Java:355)
    at Java.security.AccessController.doPrivileged(Native Method)
    at Java.net.URLClassLoader.findClass(URLClassLoader.Java:354)
    at Java.lang.ClassLoader.loadClass(ClassLoader.Java:425)
    at Sun.misc.Launcher$AppClassLoader.loadClass(Launcher.Java:308)
    at Java.lang.ClassLoader.loadClass(ClassLoader.Java:358)
    ... 3 more

this GitHub repository からプロジェクトをダウンロードしました。

26
VVB

次の依存関係をpom.xmlに追加します

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.5.2</version>
</dependency>
51
shruti1810

要求されたjarは、おそらくjackson-annotations-xyzjarではなく、jackson-core-xyzjarはここにあります: http://www.Java2s.com/Code/Jar/j/Downloadjacksoncore220rc1jar.htm

4
Emmanuel Douaud

古いバージョンのため、このエラーが発生しました。次に、このバージョンに変更しましたnエラーが消えましたmaven my pom.xmlを使用して

<properties>  
    ...
    <jackson.version>2.5.2</jackson.version>
</properties>

<dependencies>
...
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>${jackson.version}</version>
        </dependency>
</dependencies>

私の古いバージョンは「2.2.3」でした

2
asifaftab87

Jarを1つ追加する必要があります:jackson-annotations-2.1.2.jarhere からダウンロードして、クラスパスに追加できます。gradleを使用している場合は、次の依存関係を追加します。

compile 'com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:2.5.2'
1
Kartheek

Jackson 2.7.4(またはそれ以前)の時点で、クラスは jackson-jaxrs-json-provider に含まれているjackson-jaxrs-base.jarにあります

0
Cec