把模型以及相关的类库打包到一个可执行的Jar中,运行Jar可以运行SWT模型。
示例代码。
<?xml version="1.0" encoding="utf-8"?> <JarCompressWithEntrys name="exportRunnableJarWithSWT" _xmeta_id_="export1" descriptors="xworker.util.jar.JarActions/@JarCompressWithEntrys" jarFile="D:\temp\temp\singleswt.jar"> <manifest><![CDATA[Manifest-Version: 1.0 Main-Class: org.springframework.boot.loader.JarLauncher Start-Class: org.xmeta.util.JarRunner XWorker-Thing: Workbench XWorker-Action: run XWorker-Home: . XWorker-Jar: xworker.jar End:end]]></manifest> <description><![CDATA[<p>导出可执行的Jar,执行的是某个事物模型。默认包含xworker_swt模型库。</p> <p><strong>使用:</strong></p> <ul> <li><strong>jarFile</strong><br /> 要到处的Jar文件名。</li> <li><strong>mainifest</strong><br /> 修改manifest的XWorker-Thing和XWorker-Action来制定要执行的事物和方法。</li> <li><span style="color: rgb(255, 0, 0);"><strong>平台</strong><br /> SWT不同的平台下有不同的包,在xworkerModules子节点下选择目标平台。</span></li> </ul> <p><strong>依赖XWorker</strong></p> <p> 该脚本依赖XWorker来执行,执行时系统已经装好了XWorker。</p>]]></description> <Entrys> <DirectoryEntry name="copyCurentDir" directory="."> <excludes><![CDATA[.*log.* .*rwt-resources.* .*lib/.*|.*lib\\.* .*thingslib.*]]></excludes> </DirectoryEntry> <XWorkerModuleEntry name="xworkerModules" path="BOOT-INF/lib/" type="lib" trimParentPath="true" os="win32_x86_64" store="true"> <Module name="x-meta" module="xworker.ide.config.Modules/@x-meta"></Module> <Module name="Module" label="xworker_swt" module="xworker.ide.config.Modules/@xworker_swt"></Module> <Module name="xworker_dataobject" module="xworker.ide.config.Modules/@xworker_dataobject"></Module> <Module name="colorer" module="xworker.ide.config.Modules/@colorer"></Module> </XWorkerModuleEntry> <DirectoryEntry name="libs" directory="./lib/" pathPrefix="BOOT-INF/lib/" store="true"></DirectoryEntry> <XWorkerModuleEntry name="springLoader" _xmeta_id_="springLoader1" decompress="true" trimParentPath="true"> <Module name="sprint_boot_loader" _xmeta_id_="Module" module="xworker.ide.config.Modules/@srping_boot_loader"></Module> <Module name="Module" _xmeta_id_="Module1" label="log4j.properties" module="xworker.ide.config.Modules/@log4jProperties"></Module> </XWorkerModuleEntry> <JarCompressWithEntrys name="xworker.jar" _xmeta_id_="xworker_jar" jarFile="xworker.jar"> <description><![CDATA[<p>xworker.jar在运行时会自动解压到当前目录下。</p> <p>xworker.jar中的Colorer目前没有找到办法打包在Jar中,需要解压出来。</p>]]></description> <Entrys> <XWorkerModuleEntry type="resource"> <Module name="colorer" module="xworker.ide.config.Modules/@colorer"></Module> </XWorkerModuleEntry> </Entrys> </JarCompressWithEntrys> </Entrys> </JarCompressWithEntrys>