Java项目

1.嵌入到Java项目中

 动态模型引擎是一个轻量级的引擎,可以嵌入到Java项目中。在Java项目中使用动态模型,主要是把各种功能封装成模型,通过模型方便快捷的使用它们,从而实现快速编程。。

2.XWorker的作用

XWorker在Java项目中的主要作用是提供了一些模型库,以及一个模型管理器。模型管理器可以编辑和运行模型,也包含了各种各样的工具。

3.导入XWorker

    在Java项目中导入XWorker主要是导入XWorker相关的类库。如果只是用来编辑和运行模型,类库的作用范围可以设置为test。

3.1.正式版本

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">    
    <dependencies>
        <dependency>
	        <groupId>org.xworker</groupId>
	        <artifactId>xworker_swt_thingeditor</artifactId>
	        <version>2.0.3</version>
           <scope>test</scope>
	    </dependency>
        <dependency>
            <groupId>org.xworker</groupId>
            <artifactId>xworker_webserver</artifactId>
            <version>2.0.3</version>
           <scope>test</scope>
        </dependency>
    </dependencies>
</project>

     如果只是把XWorker作为模型编辑器,相关包的scope可以设置为test。

3.2.SNAPSHOT版本

     SNAPSHOT版本可以访问最新的XWorker模型库,其中sonatype仓库是为了可以使用SNAPSHOT版本的类库。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">    
    <dependencies>
        <dependency>
		    <groupId>org.xworker</groupId>
		    <artifactId>xworker_swt_thingeditor</artifactId>
		    <version>2.0.4-SNAPSHOT</version>
            <scope>test</scope>
	    </dependency>
		<dependency>
		    <groupId>org.xworker</groupId>
			<artifactId>xworker_webserver_jakarta</artifactId>
			<version>2.0.4-SNAPSHOT</version>
            <scope>test</scope>
		</dependency>
    </dependencies>
    <repositories>
		<repository>
			<name>Central Portal Snapshots</name>
			<id>central-portal-snapshots</id>
			<url>https://central.sonatype.com/repository/maven-snapshots/</url>
			<releases>
				<enabled>false</enabled>
			</releases>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
		</repository>
	</repositories>
</project>

    如果只是把XWorker作为模型编辑器,相关包的scope可以设置为test。

3.3.选择模型库

    以上pom中的依赖是运行模型编辑器必要的依赖,可以根据需要选择其它XWorker的模型库,可以参看模型库工具

4.运行模型编辑器

    编写一个Java程序来运行模型编辑器。如果是Maven项目,可以放到src/test/java下。

import org.xmeta.World;
import xworker.lang.util.XWorkerUtils;
import xworker.swt.SwtThingEditor;
import xworker.webserver.XWorkerWebServer;

import java.io.File;

public class ThingEditor {
    public static void main(String args[]){
        try{
            //获得动态模型引擎的实例
            World world = World.getInstance();
            //初始化引擎的工作目录,可能会生成一些临时文件,该目录要可写
            world.init("./xworker/");

            //添加模型管理器,即模型存放的目录,编辑模型需要。Test是模型管理器的名字,不能和其它模型管理重复。
            world.addFileThingManager("myproject", new File("./src/main/resources"), false, true);
            //模型可以放到Java源码目录下,模型可以和Java一起编译和打包,不过在jar中的模型一般是只读的

            //检查是否需要初始化,比如依赖模型库更新了重新建立索引
            XWorkerUtils.setup(false);

            //运行Web服务器和模型编辑器
            XWorkerWebServer.run();
            SwtThingEditor.run();
        }catch(Exception e){
            e.printStackTrace();
        }
        System.exit(0);
    }
}

   注意首次启动或类库变更后启动时间会比较长,这时会在启动时解压资源和建立索引等。成功运行后会打开模型管理器,如下图。

Copyright ©  2007-2019 XWorker.org  版权所有  沪ICP备08000575号