@Nikita1244
Anonymous

Ошибка при сборке приложения Android?

Здравствуйте! Пытаюсь сделать билд андроид приложения с помощью Capacitor. Изначально веб-приложение написано на Vue 3. Я перешел в каталог существующего проекта, ввел эти команды:
$ npm install @capacitor/core @capacitor/cli
$ npx cap init
$ npm run build
$ npx cap add android
$ npx cap run android

но получаю ошибку Gradle:
Error

✖ Running Gradle build - failed!
[error] 
        > Configure project :app
        WARNING:Using flatDir should be avoided because it doesn't support any
        meta-data formats.
        
        > Configure project :capacitor-cordova-android-plugins
        WARNING:Using flatDir should be avoided because it doesn't support any
        meta-data formats.
        
        > Task :app:preBuild UP-TO-DATE
        > Task :app:preDebugBuild UP-TO-DATE
        > Task :app:mergeDebugNativeDebugMetadata NO-SOURCE
        > Task :capacitor-android:preBuild UP-TO-DATE
        > Task :capacitor-android:preDebugBuild UP-TO-DATE
        > Task :capacitor-android:compileDebugAidl NO-SOURCE
        > Task :capacitor-cordova-android-plugins:preBuild UP-TO-DATE
        > Task :capacitor-cordova-android-plugins:preDebugBuild UP-TO-DATE
        > Task :capacitor-cordova-android-plugins:compileDebugAidl NO-SOURCE
        > Task :app:compileDebugAidl NO-SOURCE
        > Task :capacitor-android:packageDebugRenderscript NO-SOURCE
        > Task :capacitor-cordova-android-plugins:packageDebugRenderscript
        NO-SOURCE
        > Task :app:compileDebugRenderscript NO-SOURCE
        > Task :app:generateDebugBuildConfig UP-TO-DATE
        > Task :app:javaPreCompileDebug UP-TO-DATE
        > Task :capacitor-android:writeDebugAarMetadata UP-TO-DATE
        > Task :app:generateDebugResValues UP-TO-DATE
        > Task :capacitor-cordova-android-plugins:writeDebugAarMetadata
        > Task :app:generateDebugResources UP-TO-DATE
        > Task :capacitor-android:compileDebugRenderscript NO-SOURCE
        > Task :capacitor-android:generateDebugResValues UP-TO-DATE
        > Task :capacitor-android:generateDebugResources UP-TO-DATE
        > Task :capacitor-android:packageDebugResources UP-TO-DATE
        > Task :capacitor-cordova-android-plugins:compileDebugRenderscript
        NO-SOURCE
        > Task :capacitor-cordova-android-plugins:generateDebugResValues
        > Task :capacitor-cordova-android-plugins:generateDebugResources
        > Task :capacitor-cordova-android-plugins:packageDebugResources
        > Task :app:mergeDebugResources UP-TO-DATE
        > Task :app:mapDebugSourceSetPaths UP-TO-DATE
        > Task :app:createDebugCompatibleScreenManifests UP-TO-DATE
        > Task :app:extractDeepLinksDebug UP-TO-DATE
        > Task :capacitor-android:extractDeepLinksDebug UP-TO-DATE
        > Task :capacitor-android:processDebugManifest UP-TO-DATE
        > Task :capacitor-cordova-android-plugins:extractDeepLinksDebug
        > Task :capacitor-android:compileDebugLibraryResources UP-TO-DATE
        > Task :capacitor-android:parseDebugLocalResources UP-TO-DATE
        > Task :capacitor-cordova-android-plugins:processDebugManifest
        > Task :capacitor-android:generateDebugRFile UP-TO-DATE
        > Task :app:checkDebugAarMetadata UP-TO-DATE
        > Task :app:processDebugMainManifest UP-TO-DATE
        > Task :app:processDebugManifest UP-TO-DATE
        > Task :app:processDebugManifestForPackage UP-TO-DATE
        > Task :capacitor-cordova-android-plugins:compileDebugLibraryResources
        > Task :capacitor-android:generateDebugBuildConfig UP-TO-DATE
        > Task :capacitor-android:javaPreCompileDebug UP-TO-DATE
        > Task :capacitor-cordova-android-plugins:parseDebugLocalResources
        > Task :capacitor-android:compileDebugJavaWithJavac FAILED
        
        FAILURE: Build failed with an exception.
        
        * What went wrong:
        Execution failed for task
        ':capacitor-android:compileDebugJavaWithJavac'.
        > Could not resolve all files for configuration
        ':capacitor-android:androidJdkImage'.
        > Failed to transform core-for-system-modules.jar to match attributes
        {artifactType=_internal_android_jdk_image,
        org.gradle.libraryelements=jar, org.gradle.usage=java-runtime}.
        > Execution failed for JdkImageTransform:
        /home/nikita/Android/Sdk/platforms/android-32/core-for-system-modules.jar.
        > jlink executable /usr/lib/jvm/java-11-openjdk-amd64/bin/jlink does not
        exist.
        
        * Try:
        > Run with --stacktrace option to get the stack trace.
        > Run with --info or --debug option to get more log output.
        > Run with --scan to get full insights.
        
        * Get more help at https://help.gradle.org
        
        BUILD FAILED in 885ms
        29 actionable tasks: 8 executed, 21 up-to-date



Подскажите, как исправить?
Мой файл capacitor.config.json:
"appId": "com.example.app",
  "appName": "galaxy-of-hearing-vue",
  "webDir": "dist",
  "bundledWebRuntime": false
}
  • Вопрос задан
  • 607 просмотров
Решения вопроса 2
xez
@xez
TL Junior Roo
jlink executable /usr/lib/jvm/java-11-openjdk-amd64/bin/jlink does not exist.

Jlink куда-то пропал. Надо его найти.
Ответ написан
Комментировать
@Nikita1244 Автор вопроса
Anonymous
В общем, нашел решение исходя из ответа Dmitry Roo .
Переключил версию JDK с 11 версии на 17 и проблема пофиксилась:
$ sudo update-alternatives --config java
Есть 3 варианта для альтернативы java (предоставляет /usr/bin/java).

  Выбор   Путь                                        Приор Состояние
------------------------------------------------------------
  0            /usr/lib/jvm/java-17-openjdk-amd64/bin/java      1711      автоматический режим
  1            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      ручной режим
  2            /usr/lib/jvm/java-17-openjdk-amd64/bin/java      1711      ручной режим
* 3            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      ручной режим

Press <enter> to keep the current choice[*], or type selection number: 0
update-alternatives: используется /usr/lib/jvm/java-17-openjdk-amd64/bin/java для предоставления /usr/bin/java (java) в автоматическом режиме
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы