getsentry / sentry-cordova

The official Sentry SDK for Cordova
https://sentry.io/
MIT License
68 stars 55 forks source link

Building for android fails, on 1.0.4 shows "error: cannot find symbol" for "options.setEnableAutoSessionTracking(jsonOptions.getBoolean("enableAutoSessionTracking"));" #296

Open jamesmcb opened 1 year ago

jamesmcb commented 1 year ago

Environment

Using sentry-cordova 1.0.4 for an ionic project on a macbook pro with an M1 Processor with Java(TM) SE Runtime Environment 18.9 (build 11.0.17+10-LTS-269)

Ionic: Ionic CLI : 6.18.1 (/usr/local/lib/node_modules/@ionic/cli) Ionic Framework : @ionic/angular 5.9.4 @angular-devkit/build-angular : 0.803.29 @angular-devkit/schematics : 8.3.29 @angular/cli : 8.3.29 @ionic/angular-toolkit : 2.3.3

Cordova: Cordova CLI : 11.0.0 Cordova Platforms : not available Cordova Plugins : not available

Utility: cordova-res : 0.15.4 native-run : 1.7.1

System: Android SDK Tools : 26.1.1 (/Users/mcpuddin/Library/Android/sdk) ios-sim : 8.0.2 NodeJS : v19.1.0 (/opt/homebrew/Cellar/node/19.1.0/bin/node) npm : 8.19.3 OS : macOS Monterey Xcode : Xcode 13.4.1 Build version 13F100

Gradle: Gradle 7.1.1 Build time: 2021-07-02 12:16:43 UTC Revision: 774525a055494e0ece39f522ac7ad17498ce032c Kotlin: 1.4.31 Groovy: 3.0.7 Ant: Apache Ant(TM) version 1.10.9 compiled on September 27 2020 JVM: 11.0.17 (Oracle Corporation 11.0.17+10-LTS-269) OS: Mac OS X 12.1 aarch64

Java: java version "11.0.17" 2022-10-18 LTS Java(TM) SE Runtime Environment 18.9 (build 11.0.17+10-LTS-269) Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.17+10-LTS-269, mixed mode)

Steps to Reproduce

Run ionic cordova build android

Expected Result

It'd build with no errors. 1.0.0 and 1.0.3 works fine though.

Actual Result

When running 1.0.4 I get this on my environment. I'm fairly certain there is some dependency issue, but have no idea what it could be.

Task :app:compileDebugJavaWithJavac FAILED /Users/*****/Sites/tif/platforms/android/app/src/main/java/io/sentry/SentryCordova.java:180: error: cannot find symbol options.setEnableAutoSessionTracking(jsonOptions.getBoolean("enableAutoSessionTracking")); ^ symbol: method setEnableAutoSessionTracking(boolean) location: variable options of type SentryAndroidOptions

lucas-zimerman commented 1 year ago

Thank you for opening this issue! in meantime have you check if this error also occurs on a x64/x86 platform?

github-actions[bot] commented 1 year ago

This issue has gone three weeks without activity. In another week, I will close it.

But! If you comment or otherwise update it, I will reset the clock, and if you label it Status: Backlog or Status: In Progress, I will leave it alone ... forever!


"A weed is but an unloved flower." ― Ella Wheeler Wilcox 🥀

lucas-zimerman commented 1 year ago

Just as an udate, the SDK is building just fine on the next version using an Mac M1

DianSSIE commented 1 year ago

I am getting this in my CI environment:

`> Task :app:compileReleaseJavaWithJavac FAILED platforms/android/app/src/main/java/io/sentry/SentryCordova.java:180: error: cannot find symbol options.setEnableAutoSessionTracking(jsonOptions.getBoolean("enableAutoSessionTracking")); ^ symbol: method setEnableAutoSessionTracking(boolean) location: variable options of type SentryAndroidOptions Note: Some input files use or override a deprecated API. Note: Recompile with -Xlint:deprecation for details. Note: Some input files use unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. 1 error

FAILURE: Build failed with an exception.

it worked fine previously - about 2 months prior - with the same building environment

DianSSIE commented 1 year ago

Cordova CLI 11.0.0 Ionic CLI 6.20.3 Node.js 14.21.1 / 16.18.1 / 18.12.1 npm 8.19.3 Yarn 1.22.19 Debian 11.4 Gradle 5.6.4 OpenJDK 1.8.0_332 and 11.0.16 Android SDK 27-33

DianSSIE commented 1 year ago

Downgrading from 1.0.4 to 1.0.0 made the ci build work again

mac89 commented 10 months ago

Problem for me lay with an out-of-date SENTRY_ANDROID_SDK_VERSION in the package.json. Removing and adding the plugin worked, resulting in:

      "sentry-cordova": {
        "SENTRY_ANDROID_SDK_VERSION": "6.11.0"
      },
lucas-zimerman commented 3 months ago

I would like to tell that we'll bump an updated version of Sentry Android soon! sorry for the late response!