使用 buildozer 打包我的 kivy 应用程序时如何修复“java.lang.module.FindExcept

时间:2023-03-21
本文介绍了使用 buildozer 打包我的 kivy 应用程序时如何修复“java.lang.module.FindException:找不到模块 java.se.ee"错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我正在尝试打包我的 kivy 应用程序 (python3),但是当我运行命令 buildozer -v android debug 时看到此错误

I'm trying package my kivy app (python3) but when i run the command buildozer -v android debug see this error

# Cwd /home/javier/.buildozer/android/platform/android-sdk
Error occurred during initialization of boot layer
java.lang.module.FindException: Module java.se.ee not found
# Command failed: /home/javier/.buildozer/android/platform/android-sdk/tools/bin/sdkmanager tools platform-tools
# 
# Buildozer failed to execute the last command
# The error might be hidden in the log above this error
# Please read the full log, and search for it before
# raising an issue with buildozer itself.
# In case of a bug report, please add a full log with log_level = 2

我有这个 Java 版本

I have this Java version

$ java --version
openjdk 11.0.2 2019-01-15
OpenJDK Runtime Environment (build 11.0.2+9-Ubuntu-3ubuntu118.04.3)
OpenJDK 64-Bit Server VM (build 11.0.2+9-Ubuntu-3ubuntu118.04.3, mixed mode, sharing)

我只下载了 sdkmanager 命令行工具 从这里 并将其放在我的根路径中,但我没有成功了.

I downloaded only sdkmanager Command line tools from here and put it in my root path but i don't had success.

我在 这篇文章中看到了一个解决方案,我做到了,但我没有解决错误.

I Saw in this post a solution and i did it but i don't solve the error.

我有一个安装了所有依赖项的 virtualenv.我还编辑了 buildozer.spec 并且我自定义了它

I has a virtualenv with all dependencies installed. Also i edited the buildozer.spec and i was custom it

Virtualenv 是:

The Virtualenv is:

(envAppSinapsis)~/AppSin$ pip freeze
certifi==2019.3.9
chardet==3.0.4
Cython==0.28.2
docutils==0.14
idna==2.8
Kivy==1.10.1
Kivy-Garden==0.1.4
psycopg2==2.7.6.1
psycopg2-binary==2.7.6.1
pygame==1.9.4.dev0
Pygments==2.3.1
requests==2.21.0
urllib3==1.24.1

我认为该错误与 JAVA 相关,但我不知道是什么.非常感谢您的帮助,请原谅我的英语不好.

I think that error is related to something related to JAVA but I do not know what. I would appreciate your helps, and please, excuse my bad English.

我在 Ubuntu 18 中工作

I am working in Ubuntu 18

更新打印屏幕错误

推荐答案

直到几天前,如果您从 Ubuntu 存储库安装了 openjdk-11-jdk/jre,您会发现它实际上是 Java 10 的一个版本(https://askubuntu.com/questions/1037646/why-is-openjdk-10-packaged-as-openjdk-11).

Up until a few days ago if you had installed openjdk-11-jdk/jre from the Ubuntu repos you would have found it was actually a version of Java 10 (https://askubuntu.com/questions/1037646/why-is-openjdk-10-packaged-as-openjdk-11).

java.se.ee 在 Java 9、10 中已弃用,在 Java 11 中删除(https://www.oracle.com/technetwork/java/javase/11-relnote-issues-5012449.html)

java.se.ee has been deprecated in Java 9, 10 and removed in Java 11 (https://www.oracle.com/technetwork/java/javase/11-relnote-issues-5012449.html)

不幸的是,目前还没有简单的方法可以让 sdkmanager 或 avdmanager 等 Android 工具在 Java 11 上运行.

Unfortunately there is no simple way to get the Android tools like sdkmanager or avdmanager running with Java 11 yet.

我能够使用 Java 10 在 Ubuntu 上再次运行 buildozer:

I was able to get buildozer running on Ubuntu again with Java 10:

  • 从 http://jdk 下载 Java 10 Linux x64 JDK (.tar.gz).java.net/java-se-ri/10
  • 解压:tar -xzvf jdk-10_linux-x64_bin_ri.tar.gz
  • 设置路径:export PATH=/path/to/inflated/jdk-10/bin:$PATH

这篇关于使用 buildozer 打包我的 kivy 应用程序时如何修复“java.lang.module.FindException:找不到模块 java.se.ee"错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

上一篇:通过 Kivy 访问 Android 相机 下一篇:Kivy 和使用蓝牙发现设备

相关文章