[英]invalid “Unresolved compilation problems” in codenameone
我在codenameone中有无效的“未解决的编译问题”:
该项目具有有效的语法,并且可以在其他系统上正常工作。
但是,在我的系统上,我有奇怪的编译错误...它说指定的函数未定义,但实际上是已定义。 这是一个例子:
对于以下代码行:
Container c = new Container();
Label l = new Label ("label");
c.add(l);
(我导入com.codename1.ui.Container并导入com.codename1.ui.Label)
我收到以下错误:
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at com.codename1.impl.javase.Executor$1$1.run(Executor.java:100)
at com.codename1.ui.Display.processSerialCalls(Display.java:1144)
at com.codename1.ui.Display.mainEDTLoop(Display.java:963)
at com.codename1.ui.RunnableWrapper.run(RunnableWrapper.java:120)
at com.codename1.impl.CodenameOneThread.run(CodenameOneThread.java:176)
Caused by: java.lang.Error: Unresolved compilation problem:
The method add(Label) is undefined for the type Container
at com.mycompany.hi.HiWorld.start(HiWorld.java:53)
... 9 more
如果我将c.add(l)更改为c.addComponent(l),它将编译良好。
我有最新版本的codenameone(1.0.0.201511241324)和java jdk(jdk1.8.0_65)。
谢谢!
我假设这是一个旧项目? 您是否以任何方式更改了类路径?
您是否使用版本控制的版本 ?
如果是这样,那将临时安装旧版本的库。
add
是在过去几个月中add
的方法(在此之前,我们只有addComponent
。因此,如果您针对旧版本进行构建,则该方法将失败。
您可以转到项目属性,在“代号一”部分中,按“更新客户端库”按钮,然后刷新项目。 如果您使用版本控制的版本,这应该在add
时触发错误,或者允许您运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.