【问题标题】:Codename One build error: package java.sql does not exist代号一构建错误:包java.sql不存在
【发布时间】:2019-06-09 20:23:20
【问题描述】:

每个构建都返回相同的问题,即“包 java.sql 不存在”。我发现如果我注释掉 build.xml 文件中的特定位,则不会显示错误并且项目会构建:

<javac destdir="build/tmp" compiler="modern"
    source="1.8"
    target="1.8"
    encoding="UTF-8"
    bootclasspath="lib/CLDC11.jar"
    classpath="lib/CodenameOne.jar:${build.classes.dir}:lib/impl/cls">
    <src path="src"/>
</javac>

如果我将此注释掉,未来是否会出现任何问题?或者也许有一种方法可以解决这个问题而不用注释掉它?

任何意见将不胜感激,谢谢。

构建输出:

[javac] C:\PROJECT\GIT\GDG\src\classes\DBHandler.java:3: error: package java.sql does not exist     
[javac] import java.sql.Connection;
[javac]                ^
[javac] C:\PROJECT\GIT\GDG\src\classes\DBHandler.java:4: error: package java.sql does not exist
[javac] import java.sql.DriverManager;
[javac]                ^
[javac] C:\PROJECT\GIT\GDG\src\classes\DBHandler.java:5: error: package java.sql does not exist
[javac] import java.sql.PreparedStatement;
[javac]                ^
[javac] C:\PROJECT\GIT\GDG\src\classes\DBHandler.java:6: error: package java.sql does not exist
[javac] import java.sql.ResultSet;
[javac]                ^
[javac] C:\PROJECT\GIT\GDG\src\classes\DBHandler.java:7: error: package java.sql does not exist
[javac] import java.sql.SQLException;
[javac]                ^
[javac] C:\PROJECT\GIT\GDG\src\classes\DBHandler.java:8: error: package java.sql does not exist
[javac] import java.sql.Statement;
[javac]                ^

【问题讨论】:

  • 您是否注释掉了整个编译步骤?这显然不能解决问题。根据 CN1,并非所有 Java 包都受支持,包括 SQL “......从设备连接到远程数据库是“不切实际的”。见codenameone.com/blog/why-we-dont-support-the-full-java-api.html
  • 我上面添加的代码是我注释掉的。该程序构建良好,没有错误,模拟器没有打嗝。我读过关于 CN1 的 SQL,但 com.codename1.db.Database 包也不起作用。

标签: java sqlite codenameone eclipse-oxygen


【解决方案1】:

@rbh 与 this link 是正确的,你应该阅读它。

由于我们不支持java.sql,云中的构建将停止为您工作。 java.sql 对于手机或平板电脑没有意义。您无法通过设备连接到数据库,它不可靠并且存在巨大的安全风险。对于本地 sqlite 数据库,您可以使用我们更简单的数据库 API。

build.xml 文件中的代码旨在防止您使用我们不支持的 API。请注意,Android 构建可能会工作,因为 Android 内置 VM 具有更多功能,但 iOS 等将无法工作。

【讨论】:

  • 嗯,这就解释了为什么当该部分被注释掉时它构建得很好。谢谢。我将考虑更改代码以适应这一点。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-25
相关资源
最近更新 更多