java - Codenameone构建服务器报错java.lang.NullPointerException

标签 java android build codenameone

开发平台:Mac OSX 集成开发环境:NetBeans 目标设备:Android 主题:构建服务器问题

详细信息:

我复活了一个旧的 CN1 项目,我上次发送到构建服务器大约 2 年前。我花了很多时间进行大量重构,它在模拟器上运行良好。请注意,该应用程序使用自定义 cn1lib,其中我有相当多的代码。模拟器似乎很适合这个。

但是,当我尝试向构建服务器“发送 Android 构建”时,它会收到 java.lang.NullPointerException。为了确保我的 Android 证书是正确的,我将您的“KitchenSink”演示发送到构建服务器并且一切正常。但对我的应用程序没有好处。我不确定从这里该怎么做。有什么建议吗?

当发送到构建服务器时,我的应用程序的异常如下所示:

java.lang.NullPointerException异常 在 com.codename1.build.client.CodeNameOneBuildTask.execute(CodeNameOneBuildTask.java:330) 在 org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293) 在 sun.reflect.GeneratedMethodAccessor79.invoke(未知来源) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:498) 在 org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 在 org.apache.tools.ant.Task.perform(Task.java:348) 在 org.apache.tools.ant.Target.execute(Target.java:435) 在 org.apache.tools.ant.Target.performTasks(Target.java:456) 在 org.apache.tools.ant.Project.executeSortedTargets(Project.java:1405) 在 org.apache.tools.ant.Project.executeTarget(Project.java:1376) 在 org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) 在 org.apache.tools.ant.Project.executeTargets(Project.java:1260) 在 org.apache.tools.ant.module.bridge.impl.BridgeImpl.run(BridgeImpl.java:286) 在 org.apache.tools.ant.module.run.TargetExecutor.run(TargetExecutor.java:555) 在 org.netbeans.core.execution.RunClassThread.run(RunClassThread.java:153) 构建失败(总时间:2 秒)

该错误还引用了 build.xml 文件的这一部分:

<target name="build-for-android-device" depends="clean,copy-android-override,copy-libs,jar,clean-override">
    <codeNameOne 
        jarFile="${dist.jar}"
        displayName="${codename1.displayName}"
        packageName = "${codename1.packageName}"
        mainClassName = "${codename1.mainName}"
        version="${codename1.version}"
        icon="${codename1.icon}"
        vendor="${codename1.vendor}"
        subtitle="${codename1.secondaryTitle}"

        targetType="android"
        keystoreAlias="${codename1.android.keystoreAlias}"
        keystore="${codename1.android.keystore}"
        certPassword="${codename1.android.keystorePassword}"
        automated="${automated}"
        />
</target>

在此先感谢您的帮助。

最佳答案

好的,我解决了这个问题。看来我的 lib 目录中有一些过时的 cn1lib 文件。这些我后来合并到一个 cn1lib 文件中。我怀疑他们有冲突。

现在一切似乎都很好。抱歉误报!

关于java - Codenameone构建服务器报错java.lang.NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42147012/

相关文章:

java - 如何将图像插入到 JTable 单元格中

android - Google Play URL 弄乱了 Facebook 的分享对话框

build - 如何在 Intellij IDEA 的构建路径中重新包含一个类?

xcode 4 build设置说明

java - 一般来说,学习 Spring AOP 或 AOP 的最佳方法是什么?

java - 我可以在文本文件中使用 Scanner 类来获取信息吗?

java - Java.lang.Cloneable 接口(interface)指南的问题

java - Java Android 多次启动/调用同一个线程

java - 如何通过Java以编程方式访问网站?下载 HTML 代码、保存 cookie、填写和发送表格等

android - 管理 Android 应用商店(谷歌/亚马逊/等)的代码/构建?