使用Drools 6.0进行部署

KieScanner

6.0 KieScanner取代了5.x KnowledgeAgent。 它使用嵌入式Maven允许在运行时解析和检索jar。 6.0应用程序现在可以轻松支持依赖关系和可传递依赖关系; 使用众所周知的Maven语义进行版本控制。 它允许在类路径上进行部署,也可以在运行时动态进行部署。 目前它支持手动“ scanNow”和间隔轮询,将来会添加远程处理。 可以按照以下示例在KieContainer上注册KieScanner:

KieServices kieServices = KieServices.Factory.get();
ReleaseId releaseId = kieServices.newReleaseId( "org.acme", "myartifact", "1.0-SNAPSHOT" );
KieContainer kContainer = kieServices.newKieContainer( releaseId );
KieScanner kScanner = kieServices.newKieScanner( kContainer );
// Start the KieScanner polling the Maven repository every 10 seconds
kScanner.start( 10000L );

在此示例中,将KieScanner配置为以固定的时间间隔运行,但也可以通过在其上调用scanNow()方法来按需运行它。 如果KieScanner在Maven存储库中找到该KieContainer使用的Kie项目的更新版本,它将自动下载新版本并触发新项目的增量构建。 从这一刻起,从该KieContainer创建的所有新KieBases和KieSessions将使用新的项目版本。

安装

备忘单1

部署方式

备忘单2

Settings.xml和远程存储库设置

maven settings.xml用于配置Maven执行。 可以在Maven网站上找到详细说明:http://maven.apache.org/settings.html settings.xml文件可以位于3个位置,实际使用的设置是这3个位置的合并。

  • Maven安装:$ M2_HOME / conf / settings.xml
  • 用户的安装:$ {user.home} /。m2 / settings.xml
  • 系统属性kie.maven.settings.custom指定的文件夹位置

settings.xml用于指定远程存储库的位置。 激活指定远程存储库的配置文件非常重要,通常可以使用“ activeByDefault”完成此操作:

<profiles><profile><id>profile-1</id><activation><activeByDefault>true</activeByDefault></activation>...</profile>
</profiles>

Maven版本和依赖关系 Maven支持多种机制来管理应用程序中的版本控制和依赖关系。 可以使用特定的版本号发布模块,也可以使用SNAPSHOT后缀。 依赖项可以指定要使用的版本范围,也可以利用SNAPSHOT机制。

StackOverflow为此提供了一个很好的描述,下面转载。

  • http://stackoverflow.com/questions/30571/how-do-i-tell-maven-to-use-the-latest-version-of-a-dependency

如果您始终想使用最新版本,则Maven有两个关键字可以用作版本范围的替代。 您应该谨慎使用这些选项,因为您将不再控制所使用的插件/依赖项。

当您依赖插件或依赖项时,可以使用LATEST或RELEASE的版本值。 LATEST是指特定工件的最新发行版本或快照版本,是特定存储库中最新部署的工件。 RELEASE是指存储库中的最后一个非快照版本。 通常,设计依赖工件非特定版本的软件并不是最佳实践。 如果您正在开发软件,则可能希望使用RELEASE或LATEST作为便利,以便在发行新版本的第三方库时不必更新版本号。 发布软件时,应始终确保项目依赖于特定版本,以减少构建或项目受不受您控制的软件版本影响的机会。 谨慎使用LATEST和RELEASE。

有关更多详细信息,请参见Maven书籍的POM语法部分。

  • http://books.sonatype.com/mvnref-book/reference/pom-relationships-sect-pom-syntax.html
  • http://books.sonatype.com/mvnref-book/reference/pom-relationships-sect-project-dependencies.html

这是说明各种选项的示例。 在Maven存储库中,com.foo:my-foo具有以下元数据:

<metadata><groupId>com.foo</groupId><artifactId>my-foo</artifactId><version>2.0.0</version><versioning><release>1.1.1</release><versions><version>1.0</version><version>1.0.1</version><version>1.1</version><version>1.1.1</version><version>2.0.0</version></versions><lastUpdated>20090722140000</lastUpdated></versioning>
</metadata>

如果需要依赖该工件,则可以使用以下选项(当然可以指定其他版本范围,只在此处显示相关的版本):声明一个确切的版本(将始终解析为1.0.1):

<version>[1.0.1]</version>

声明一个明确的版本(除非发生冲突,否则当Maven选择一个匹配的版本时,它将始终解析为1.0.1):

<version>1.0.1</version>

声明所有1.x的版本范围(当前将解析为1.1.1):

<version>[1.0.0,2.0.0)</version>

声明一个开放式版本范围(将解析为2.0.0):

<version>[1.0.0,)</version>

将版本声明为最新(将解析为2.0.0):

<version>LATEST</version>

将版本声明为RELEASE(将解析为1.1.1):

<version>RELEASE</version>

请注意,默认情况下,您自己的部署将更新Maven元数据中的“最新”条目,但是要更新“发布”条目,则需要从Maven超级POM激活“发布配置文件”。 您可以使用“ -Prelease-profile”或“ -DperformRelease = true”来执行此操作

参考: Drools&jBPM博客上的JCG合作伙伴 Mark Proctor的Drools 6.0部署 。

翻译自: https://www.javacodegeeks.com/2014/01/deployment-with-drools-6-0.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/365894.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

activemq安装与配置_ActiveMQ(消息队列)从入门到了解

一、 ActiveMQ 简介 1 什么是 ActiveMQ ActiveMQ 是 Apache 出品&#xff0c;最流行的&#xff0c;能力强劲的开源消息总线。ActiveMQ 是一个 完全支持 JMS1.1 和 J2EE 1.4 规范的 JMS Provider 实现&#xff0c;尽管 JMS 规范出台已经是很久 的事情了&#xff0c;但是 JMS 在当…

httpHandlers和httpModules接口介绍 (5)

IHttpHandler工厂 class TestHandlerFactory : IHttpHandlerFactory{public IHttpHandler GetHandler(HttpContext context, string requestType, string url, string pathTranslated){string fname url.Substring(url.IndexOf(/) 1);while (fname.IndexOf(/) ! -1)fname …

P4336 [SHOI2016]黑暗前的幻想乡

题目 P4336 [SHOI2016]黑暗前的幻想乡 做法 每种颜色恰好一条边&#xff0c;有点难处理啊 根据套路&#xff0c;数据范围这么小&#xff0c;容斥一下所有的情况就可以了 对每种颜色进行状压&#xff0c;表这次只能选这些颜色&#xff0c;做\(n-1\)的时候会加上多余的东西&#…

智联招聘简历如何导出html,如何将拉勾网(智联招聘)的预览简历导出来

最近在整理简历的时候发现拉勾网/智联招聘上面的预览简历是那么简洁漂亮&#xff0c;可是当我想把他导到本地&#xff0c;发pdf文件给企业时却只能是word&#xff0c;那么的难看&#xff0c;摸索了一会儿找到了一种比较好的方法可以得到预览的简历。1.另存为html文件在这里插入…

Java反编译器的剖析

简单地说&#xff0c;反编译器尝试将源代码转换为目标代码。 但是有很多有趣的复杂性-Java源代码是结构化的&#xff1b; 字节码当然不是。 而且&#xff0c;转换不是一对一的&#xff1a;两个不同的Java程序可能会产生相同的字节码。 我们需要应用启发式方法&#xff0c;以合理…

Mybatis注解开发模糊查询

Mybatis注解开发模糊查询 一般在使用mybatis时都是采用xml文件保存sql语句 这篇文章讲一下在使用mybatis的注解开发时&#xff0c;如何进行模糊查询 模糊查询语句写法&#xff08;在Select注解中&#xff09;&#xff1a; where field like CONCAT(%,#{keyWord},%) 下面是一些错…

JS中深浅拷贝 函数封装代码

一、了解 基本数据类型保存在栈内存中&#xff0c;按值访问&#xff0c;引用数据类型保存在堆内存中&#xff0c;按址访问。 二、浅拷贝 浅拷贝只是复制了指向某个对象的指针&#xff0c;而不是复制对象本身&#xff0c;新旧对象其实是同一内存地址的数据&#xff0c;修改其中…

iOS开发之Masonry框架-使用方法须知

目录 常用的属性与常量Masonry使用注意约束的优先级Masonry添加约束的方法修改约束在哪创建我的约束创建约束技巧&#xff1a;Masonry是一个轻量级的布局框架&#xff0c;它拥有自己的描述语法&#xff08;采用更优雅的链式语法封装&#xff09;来自动布局&#xff0c;具有很好…

wps单机无网络版_单平台销量破百万,这个国产单机系列要出网游,还要上主机...

他们想做"国际顶级的单机游戏开发商"。文/彭子诚作为一款国产单机游戏&#xff0c;《古剑奇谭三》在去年年底上市后&#xff0c;至今在 Steam 上依然保持着 83% 的好评率。大量的玩家对于游戏内容给出了认可&#xff0c;“用心”这个词是最高频出现的词语。Wegame 官…

JavaFX 8的弹出式编辑器

在过去的几个月中&#xff0c;我很高兴与JavaFX 8一起使用&#xff0c;以便为计划和调度应用程序实现复杂的用户界面。 所需的功能之一是执行“就地”编辑的方法&#xff0c;即快速编辑用户选择对象的某些基本属性的方法。 遵循“如果您无法创新&#xff0c;就模仿”的原则&am…

body onload 控制窗口大小 html,如何实现在调整浏览器窗口大小时缩放的网页?

感谢所有的建议&#xff01;看起来我必须做的丑陋的东西是必要的。以下工作(在我的机器上&#xff0c;无论如何)在IE和FireFox中。我稍后可以为CodeProject.com制作一篇文章; - )这个javascript进入&#xff06;lt; head&#xff06;gt;部分&#xff1a;var tmout null;var mu…

【Mac命令行学习】(持续更新)

常用命令&#xff1a; 一、修改环境变量文件&#xff1a; 1、进入文件&#xff1a;vi .bash_profile 2、键盘点击【a】键&#xff0c;进入文件编辑 3、修改完成后&#xff0c;如果是vi&#xff0c;点击【esc】键退出编辑模式 4、输入以下命令进行具体操作&#xff1a; :wq 保存…

flex实现水平居中和两栏布局

<!DOCTYPE html> <html xmlns"http://www.w3.org/1999/xhtml"> <head> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/><title>水平垂直的实现</title><style>.wrapper{width:25…

opencv 多线程加速_线程池给你写好了,想加速拿来用就行哈

图像拼接实现见&#xff1a;OpenCV源码系列|图像拼接1OpenCV源码系列|图像拼接2耗时在调用函数&#xff1a;Mat pano; Ptr stitcher Stitcher::create(mode); Stitcher::Status status stitcher->stitch(imgs, pano)能否将这一步放进线程池里进行加速呢&#xff1f;1. 测试…

poping 心法

音乐 01.Eamon - (How Could You) Bring Him Home02.The Pussycat Dolls - Buttons03.Most Wanted ft. Fingazz, Volture -From Juvi To The Penitentiary (Instrumental)04.Kaila Yu - Move05.Danity Kane - Show Stopper06.Slick Dogg - Bang On m07.Danity Kane - Show Stop…

G1 vs CMS vs平行GC

这篇文章是我们一年前进行的实验的跟进&#xff0c;比较了现实环境中不同GC算法的性能。 我们进行了相同的实验&#xff0c;将测试扩展为包含G1垃圾收集器&#xff0c;然后在不同的平台上运行了测试。 今年&#xff0c;我们的测试使用了以下垃圾收集器&#xff1a; -XX&#x…

html5 video修改默认样式,HTML5中将video设置为背景的方法

主要用到了video标签&#xff0c;css样式&#xff0c;原理是先将video标签利用position:fixed;使video标签脱离文档流&#xff0c;在将他的z-index设置为最低的&#xff0c;比如-9999。再插入的内容自然就覆盖在视频上面了。1.首先&#xff0c;将video插入到网页中&#xff0c;…

hdfs-03-hdfs客户端操作

1, hdfs中两种连接方式 1), 网页 2), 客户端 文件的切块大小和存储的副本数量&#xff0c;都是由客户端决定&#xff01; 所谓的由客户端决定&#xff0c;是通过配置参数来定的 hdfs的客户端会读以下两个参数&#xff0c;来决定切块大小、副本数量&#xff1a; 切块大小的参数&…

ES6语法的学习与实践

ES6是JavaScript语言的新一代标准&#xff0c;是ECMAScript的第六个版本&#xff0c;加入了很多新的功能和语法&#xff0c;在很多框架&#xff0c;如在使用Vue,React等框架的项目中一般都采用ES6语法来编写的&#xff0c;下面对经常用到的ES6语法做简要的介绍。 1.let,const l…

python闭包的应用场景_简单谈谈Python中的闭包

Python中的闭包 前几天又有人留言&#xff0c;关于其中一个闭包和re.sub的使用不太清楚。我在脚本之家搜索了下&#xff0c;发现没有写过闭包相关的东西&#xff0c;所以决定总结一下&#xff0c;完善Python的内容。 1. 闭包的概念 首先还得从基本概念说起&#xff0c;什么是闭…