Codenameone designer.jar保存主题文件时未更新StateMachineBase.java

Codenameone designer.jar保存主题文件时未更新StateMachineBase.java,codenameone,Codenameone,StateMachineBase.java未更新。我尝试过移动文件以便设计者重新创建它,我尝试过从命令行运行它(没有显示错误消息) 我能做些什么来解决designer.jar和StateMachineBase.java文件的问题吗 designer.jar文件的最后修改日期为2015年9月1日。我通常使用IntelliJ Idea,但鉴于我是从命令行运行设计器,我认为这有助于从等式中消除IDE 我可以采取哪些步骤对此进行故障排除?在编写StateMachineBase.java文件时,哪些文件或

StateMachineBase.java未更新。我尝试过移动文件以便设计者重新创建它,我尝试过从命令行运行它(没有显示错误消息)

我能做些什么来解决designer.jar和StateMachineBase.java文件的问题吗

designer.jar文件的最后修改日期为2015年9月1日。我通常使用IntelliJ Idea,但鉴于我是从命令行运行设计器,我认为这有助于从等式中消除IDE

我可以采取哪些步骤对此进行故障排除?在编写StateMachineBase.java文件时,哪些文件或设置会影响设计器的行为

以下是我的codenameone_settings.properties文件的内容:

#
#Fri Mar 04 17:16:27 EST 2016
codename1.ios.appid=OBFUSCATED.ca.zettabot.trainingtool
codename1.ios.release.provision=
codename1.arg.rim.obfuscation=true
codename1.j2me.nativeTheme=nbproject/nativej2me.res
codename1.arg.ios.project_type=ios
codename1.arg.ios.interface_orientation=UIInterfaceOrientationPortrait\:UIInterfaceOrientationPortraitUpsideDown\:UIInterfaceOrientationLandscapeLeft\:UIInterfaceOrientationLandscapeRight
codename1.displayName=TrainingTool
guiResource=theme.res
codename1.android.keystoreAlias=
codename1.ios.release.certificate=
codename1.android.keystorePassword=
codename1.arg.ios.dsym=false
codename1.arg.android.release=true
package=generated
codename1.arg.ios.statusbar_hidden=false
codename1.languageLevel=5
codename1.android.keystore=
mainForm=SplashScreen
userClassAbs=C\:\\Users\\vankej\\Desktop\\Personal\\android\\codename1\\TrainingTool\\src\\userclasses\\StateMachine.java
codename1.vendor=Codename One
codename1.arg.win.ver=8
codename1.arg.zooz.sandbox=false
codename1.ios.debug.certificatePassword=
codename1.mainName=MyApplication
codename1.ios.release.certificatePassword=
codename1.arg.ios.prerendered_icon=false
codename1.arg.vserv.scaleMode=false
codename1.ios.debug.certificate=
libVersion=99
codename1.arg.vserv.category=29
codename1.arg.ios.application_exits=false
codename1.secondaryTitle=TrainingTool
codename1.description=
codename1.ios.debug.provision=
baseClass=src/generated/StateMachineBase.java
codename1.arg.j2me.nativeThemeConst=0
codename1.rim.certificatePassword=
codename1.version=1.0
codename1.icon=icon.png
codename1.rim.signtoolCsk=
codename1.arg.android.debug=false
codename1.rim.signtoolDb=
codename1.arg.vserv.transition=300000
userClass=src/userclasses/StateMachine.java
codename1.arg.ios.includePush=false
codename1.packageName=ca.zettabot.trainingtool
以下是打开并尝试保存主题文件时设计器命令的命令行输出:

C:\Users\vankej\Desktop\Personal\android\codename1\TrainingTool>java -jar designer.jar src\theme.res > output.txt
2016-03-08 21:59:34.602:INFO:oejs.Server:jetty-8.0.y.z-SNAPSHOT
2016-03-08 21:59:34.638:INFO:oejs.AbstractConnector:Started SelectChannelConnector@0.0.0.0:9000 STARTING
Mar 08, 2016 9:59:34 PM org.jdesktop.application.LocalStorage getId
WARNING: unspecified resource Application.id using ResourceEditorApp
Mar 08, 2016 9:59:34 PM org.jdesktop.application.LocalStorage getId
WARNING: unspecified resource Application.vendorId using UnknownApplicationVendor
javax.xml.bind.UnmarshalException
 - with linked exception:
[org.xml.sax.SAXParseException; systemId: file:/C:/Users/vankej/Desktop/Personal/android/codename1/TrainingTool/res/theme.xml; lineNumber: 1; columnNumber: 1; Premature end of file.]
        at javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalException(Unknown Source)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.createUnmarshalException(Unknown Source)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(Unknown Source)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(Unknown Source)
        at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
        at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
        at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
        at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
        at com.codename1.ui.util.EditableResources.openFileWithXMLSupport(EditableResources.java:409)
        at com.codename1.designer.ResourceEditorView$LoadResourceFileAction.exectute(ResourceEditorView.java:4112)
        at com.codename1.ui.resource.util.BlockingAction.run(BlockingAction.java:88)
        at java.lang.Thread.run(Unknown Source)
Caused by: org.xml.sax.SAXParseException; systemId: file:/C:/Users/vankej/Desktop/Personal/android/codename1/TrainingTool/res/theme.xml; lineNumber: 1; columnNumber: 1; Premature end of file.
        at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
        at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(Unknown Source)
        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source)
        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source)
        at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(Unknown Source)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(Unknown Source)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
        ... 10 more
java.lang.NullPointerException
        at com.codename1.designer.UserInterfaceEditor.persistToXML(UserInterfaceEditor.java:3161)
        at com.codename1.designer.UserInterfaceEditor.persistToXML(UserInterfaceEditor.java:3083)
        at com.codename1.designer.UserInterfaceEditor.appendComponentXMLBody(UserInterfaceEditor.java:2821)
        at com.codename1.designer.UserInterfaceEditor.persistToXML(UserInterfaceEditor.java:3510)
        at com.codename1.designer.UserInterfaceEditor.persistToXML(UserInterfaceEditor.java:3083)
        at com.codename1.ui.util.EditableResources.writeUIXml(EditableResources.java:1287)
        at com.codename1.ui.util.EditableResources.saveXMLFile(EditableResources.java:1236)
        at com.codename1.ui.util.EditableResources.saveXML(EditableResources.java:1311)
        at com.codename1.designer.ResourceEditorView$SaveResourceFileAction.exectute(ResourceEditorView.java:4295)
        at com.codename1.ui.resource.util.BlockingAction.run(BlockingAction.java:88)
        at java.lang.Thread.run(Unknown Source)

从命令行运行设计器时,请检查其输出

请确保您的
codenameone\u设置。属性
是有效文件,并且包含以下内容

这必须指向有效的res文件,该文件必须是包含GUI的文件:

guiResource=theme.res
这必须指向为
StatemachineBase.java
生成的包:

package=generated
这必须指向
StateMachine.java
源文件,不是很重要,而是很重要:

userClass=src/userclasses/StateMachine.java
这必须指向GUI中的有效主窗体:

mainForm=Main
您可以尝试使用以下命令直接从命令行重新生成状态机:

java -jar path_to_designer_1.jar -regen path_to_resfile.res

我真的很想知道这是有效的还是失败的。

如果您从命令行运行设计器,当您尝试保存更改时,它的输出是什么(这就是更新的点)。它打印什么吗?你的codenameone\u设置的内容是什么?属性?谢了,谢谢你的提示。我已经检查过了,所有设置都是正确的(我根本不记得手动编辑属性,尤其是在出现问题时)。没有命令行错误消息。我将用我的设置文件更新问题以供审阅。我突然想到的一件事是,当我查找“userClass”时,我发现了一行“userClassAbs=C\:\\Users\\vankej…”(为了简洁起见,我在这里截断了它)。我在我的答案中添加了一种从命令行生成源代码的方法。我不确定这里会出什么问题。您是否使用javaw命令从命令行运行?如果是这样,它不会将任何内容打印到控制台,请确保您使用的是java命令,而java命令会打印任何内容。-regen命令确实成功生成了StateMachineBase.java(耶!!!),但设计器仍然不会更新该文件。我捕获了打开并试图保存主题的命令行输出。我已将其添加到原始帖子中以供审阅。谢谢你在这里的帮助。。。我以为我浪费了所有的工作,真是疯了。请尝试取消选中
文件->XML团队模式
XML中似乎有损坏。谢谢Shai,我一关闭XML团队模式并保存,StateMachineBase就会更新。好记,以备将来参考!