簡體   English   中英

使用 Google Data Analytics API (ga4) 獲取分析報告的 java 程序(jdk 1.8)的 maven 依賴項是什么?

[英]What are maven dependencies for a java program (jdk 1.8) which uses Google Data Analytics API (ga4) to get analytics report?

我正在嘗試使用Google Analytics Data (g4)的新 API 。 我想從universal API切換到G4 ,問題是在 Java 8 中存在依賴項錯誤,而我正在全部導入它們。 它在 Java 18 中運行良好! 但不在 java 中 8. 文檔和示例代碼在此處 我已添加到我的 maven 依賴項中:

<dependency>
    <groupId>com.google.auth</groupId>
    <artifactId>google-auth-library-oauth2-http</artifactId>
    <version>1.11.0</version>
</dependency>


 <dependency>
    <groupId>com.google.analytics</groupId>
    <artifactId>google-analytics-data</artifactId>
    <version>0.14.4</version>
</dependency>
 
<dependency>
    <groupId>com.google.auth</groupId>
    <artifactId>google-auth-library-credentials</artifactId>
    <version>1.11.0</version>
</dependency>

<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>guava</artifactId>
    <version>31.1-jre</version>
</dependency>
 
<dependency>
    <groupId>com.google.api</groupId>
    <artifactId>api-common</artifactId>
    <version>2.2.1</version>
</dependency>
 
<dependency>
    <groupId>io.grpc</groupId>
    <artifactId>grpc-alts</artifactId>
    <version>1.49.0</version>
    <scope>runtime</scope>
</dependency>
 
<dependency>
    <groupId>com.google.api</groupId>
    <artifactId>gax-grpc</artifactId>
    <version>2.19.0</version>
</dependency>
<dependency>
    <groupId>com.google.api</groupId>
    <artifactId>gax</artifactId>
    <version>2.19.0</version>
</dependency>
 
<dependency>
    <groupId>com.google.api.grpc</groupId>
    <artifactId>grpc-google-longrunning-v1</artifactId>
    <version>0.1.24</version>
</dependency>

錯誤是

 Exception in thread "main" java.lang.NoClassDefFoundError: com/google/longrunning/GetOperationRequest
        at com.google.longrunning.stub.GrpcOperationsStub.<clinit>(GrpcOperationsStub.java:68)
        at com.google.analytics.data.v1beta.stub.GrpcBetaAnalyticsDataStub.<init>(GrpcBetaAnalyticsDataStub.java:185)
        at com.google.analytics.data.v1beta.stub.GrpcBetaAnalyticsDataStub.<init>(GrpcBetaAnalyticsDataStub.java:171)
        at com.google.analytics.data.v1beta.stub.GrpcBetaAnalyticsDataStub.create(GrpcBetaAnalyticsDataStub.java:149)
        at com.google.analytics.data.v1beta.stub.BetaAnalyticsDataStubSettings.createStub(BetaAnalyticsDataStubSettings.java:161)
        at com.google.analytics.data.v1beta.BetaAnalyticsDataClient.<init>(BetaAnalyticsDataClient.java:163)
        at com.google.analytics.data.v1beta.BetaAnalyticsDataClient.create(BetaAnalyticsDataClient.java:145)
        at com.google.report.ga4.Ga4DataAnalytics.main(Ga4DataAnalytics.java:42)
Caused by: java.lang.ClassNotFoundException: com.google.longrunning.GetOperationRequest
        at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:419)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
        ... 8 more
[Exit 1]

任何幫助表示贊賞。

最后我找到了答案。 依賴項如下:

<dependency>
    <groupId>com.google.analytics</groupId>
    <artifactId>google-analytics-data</artifactId>
    <version>0.14.5</version>
</dependency>
 
<dependency>
    <groupId>com.google.auth</groupId>
    <artifactId>google-auth-library-credentials</artifactId>
    <version>1.11.0</version>
</dependency>

<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>guava</artifactId>
    <version>31.1-jre</version>
</dependency>
 
<dependency>
    <groupId>com.google.api</groupId>
    <artifactId>api-common</artifactId>
    <version>2.2.1</version>
</dependency>
 
<dependency>
    <groupId>io.grpc</groupId>
    <artifactId>grpc-alts</artifactId>
    <version>1.49.0</version>
    <scope>runtime</scope>
</dependency>
 
<dependency>
    <groupId>com.google.api</groupId>
    <artifactId>gax-grpc</artifactId>
    <version>2.19.0</version>
</dependency>
<dependency>
    <groupId>com.google.api</groupId>
    <artifactId>gax</artifactId>
    <version>2.19.0</version>
</dependency>
 
<dependency>
    <groupId>com.google.api.grpc</groupId>
    <artifactId>grpc-google-longrunning-v1</artifactId>
    <version>0.1.24</version>
</dependency>
 
<dependency>
    <groupId>io.grpc</groupId>
    <artifactId>grpc-stub</artifactId>
    <version>1.49.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.grpc/grpc-protobuf -->
<dependency>
    <groupId>io.grpc</groupId>
    <artifactId>grpc-protobuf</artifactId>
    <version>1.49.0</version>
</dependency>

<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>failureaccess</artifactId>
    <version>1.0.1</version>
</dependency>
<!-- Thanks for using https://jar-download.com -->
<dependency>
    <groupId>io.grpc</groupId>
    <artifactId>grpc-core</artifactId>
    <version>1.33.0</version>
</dependency>
<!-- Thanks for using https://jar-download.com -->
<dependency>
    <groupId>io.grpc</groupId>
    <artifactId>grpc-grpclb</artifactId>
    <version>1.49.0</version>
</dependency>
<!-- Thanks for using https://jar-download.com -->
<dependency>
    <groupId>io.perfmark</groupId>
    <artifactId>perfmark-api</artifactId>
    <version>0.21.0</version>
</dependency>

另外,我在主要之前添加了:

static {
    LoadBalancerRegistry.getDefaultRegistry().register( new GrpclbLoadBalancerProvider());
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM