Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ApacheFlink谷歌发布/订阅连接器在intellij idea内部运行NoClassDefFoundError_Java_Intellij Idea_Classpath_Apache Flink - Fatal编程技术网

Java ApacheFlink谷歌发布/订阅连接器在intellij idea内部运行NoClassDefFoundError

Java ApacheFlink谷歌发布/订阅连接器在intellij idea内部运行NoClassDefFoundError,java,intellij-idea,classpath,apache-flink,Java,Intellij Idea,Classpath,Apache Flink,我正在尝试将Google发布/订阅连接器与Flink一起使用,请参见此处 然而,我越来越 Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.google.cloud.pubsub.v1.stub.GrpcPublisherStub 我知道连接器的依赖版本是 好的,经过一些调试和使用强大的Intellij Idea后,我意识到问题在于缺少对以下各项的依赖: <dependency>

我正在尝试将Google发布/订阅连接器与Flink一起使用,请参见此处

然而,我越来越

Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.google.cloud.pubsub.v1.stub.GrpcPublisherStub
我知道连接器的依赖版本是


好的,经过一些调试和使用强大的Intellij Idea后,我意识到问题在于缺少对以下各项的依赖:

 <dependency>
        <groupId>com.google.protobuf</groupId>
        <artifactId>protobuf-java</artifactId>
        <version>3.9.1</version>
    </dependency>

com.google.protobuf
protobuf java
3.9.1
Exception in thread "main" org.apache.flink.runtime.client.JobExecutionException: Job execution failed.
    at org.apache.flink.runtime.jobmaster.JobResult.toJobExecutionResult(JobResult.java:146)
    at org.apache.flink.runtime.minicluster.MiniCluster.executeJobBlocking(MiniCluster.java:638)
    at org.apache.flink.streaming.api.environment.LocalStreamEnvironment.execute(LocalStreamEnvironment.java:123)
    at btc.da.StreamingJob.main(StreamingJob.java:87)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.google.cloud.pubsub.v1.stub.GrpcPublisherStub
    at com.google.cloud.pubsub.v1.Publisher.<init>(Publisher.java:149)
    at com.google.cloud.pubsub.v1.Publisher.<init>(Publisher.java:78)
    at com.google.cloud.pubsub.v1.Publisher$Builder.build(Publisher.java:614)
    at org.apache.flink.streaming.connectors.gcp.pubsub.PubSubSink.open(PubSubSink.java:111)
    at org.apache.flink.api.common.functions.util.FunctionUtils.openFunction(FunctionUtils.java:36)
    at org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator.open(AbstractUdfStreamOperator.java:102)
    at org.apache.flink.streaming.api.operators.StreamSink.open(StreamSink.java:48)
    at org.apache.flink.streaming.runtime.tasks.StreamTask.openAllOperators(StreamTask.java:424)
    at org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:290)
    at org.apache.flink.runtime.taskmanager.Task.run(Task.java:711)
    at java.base/java.lang.Thread.run(Thread.java:835)
<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>3.0.0</version>
                <executions>
                    <!-- Run shade goal on package phase -->
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                        <configuration>
                            <artifactSet>
                                <excludes>
                                    <exclude>org.apache.flink:force-shading</exclude>
                                    <exclude>com.google.code.findbugs:jsr305</exclude>
                                    <exclude>org.slf4j:*</exclude>
                                    <exclude>log4j:*</exclude>
                                </excludes>
                            </artifactSet>
                            <filters>
                                <filter>
                                    <!-- Do not copy the signatures in the META-INF folder.
                                    Otherwise, this might cause SecurityExceptions when using the JAR. -->
                                    <artifact>*:*</artifact>
                                    <excludes>
                                        <exclude>META-INF/*.SF</exclude>
                                        <exclude>META-INF/*.DSA</exclude>
                                        <exclude>META-INF/*.RSA</exclude>
                                    </excludes>
                                </filter>
                            </filters>
                            <transformers>
                                <transformer
                                        implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                    <mainClass>btc.da.StreamingJob</mainClass>
                                </transformer>
                            </transformers>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins> 
macbookOOO:btc-utx-da aghan$ jar tf target/btc-utx-da-0.1.jar | grep GrpcPublisherStub
com/google/cloud/pubsub/v1/stub/GrpcPublisherStub.class
macbook5434:btc-utx-da aghan$ 
 <dependency>
        <groupId>com.google.protobuf</groupId>
        <artifactId>protobuf-java</artifactId>
        <version>3.9.1</version>
    </dependency>