﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-零全零美（www.website371.com）-随笔分类-jbpm</title><link>http://www.blogjava.net/ycyk168/category/34843.html</link><description>生活中的很多事情，并不像If...Else那么简单！</description><language>zh-cn</language><lastBuildDate>Tue, 24 Jul 2012 20:24:14 GMT</lastBuildDate><pubDate>Tue, 24 Jul 2012 20:24:14 GMT</pubDate><ttl>60</ttl><item><title>[原创]巧用System.getProperty()编译现有工程的java文件</title><link>http://www.blogjava.net/ycyk168/archive/2012/07/24/383890.html</link><dc:creator>零全零美</dc:creator><author>零全零美</author><pubDate>Tue, 24 Jul 2012 15:44:00 GMT</pubDate><guid>http://www.blogjava.net/ycyk168/archive/2012/07/24/383890.html</guid><wfw:comment>http://www.blogjava.net/ycyk168/comments/383890.html</wfw:comment><comments>http://www.blogjava.net/ycyk168/archive/2012/07/24/383890.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ycyk168/comments/commentRss/383890.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ycyk168/services/trackbacks/383890.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp; 由于开发<a href="http://www.website371.com">www.website371.com</a> 、<a href="http://www.modaotea.com">www.modaotea.com</a> 两个网站时使用的框架是自己写的，其中有一个工具是模拟hibernate的思路，动态生成对象关系映射！中间利用freemarker生成.java类！但是始终存在一个很大的问题，就是生成的.java文件，没有办法直接编译，当然最好的结果当然是自动编译后能达成JAR包，直接放在工程里！<br />&nbsp;&nbsp;&nbsp; 研究好了半天，终于找到一种解决方案，既然是用JAVA生成.java文件自动编译并打成JAR包，<br />那第一步自然就是用JAVA执行CMD命令了（注意多个命令之间要用&#8220;&amp;&amp;&#8221;隔开哦，在这个问题上浪费了我很多时间！）<br />第二步：利用javac编译.java文件（因.java依赖包过多，如果手写要累死了！！这里正好使用：System.getProperty("java.class.path")）<br />第三步：利用jar命令打包<br />全部代码如下：</p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">final</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;String&nbsp;FILE_PATH&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">d:\\db2java\\</span><span style="color: #000000">"</span><span style="color: #000000">;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">final</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;String&nbsp;PACKAGE_PATH&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">com/zzsb/beans/</span><span style="color: #000000">"</span><span style="color: #000000">;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">final</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;String&nbsp;CLASS_FILE_PATH&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;FILE_PATH</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">classes</span><span style="color: #000000">"</span><span style="color: #000000">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;cmd&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">cmd&nbsp;/c&nbsp;cd&nbsp;/d&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;FILE_PATH&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;&amp;&amp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">javac&nbsp;-classpath&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;System.getProperty(</span><span style="color: #000000">"</span><span style="color: #000000">java.class.path</span><span style="color: #000000">"</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;FILE_PATH</span><span style="color: #000000">+</span><span style="color: #000000">PACKAGE_PATH&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">*.java&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;&amp;&amp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">jar&nbsp;cf&nbsp;bean-</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">TABLE_SCHEMA</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">-</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;DateUtil.getCurrentDate14()&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">.jar&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;PACKAGE_PATH</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">*.class</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;&amp;&amp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">jar&nbsp;cf&nbsp;bean-source-</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">TABLE_SCHEMA</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">-</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;DateUtil.getCurrentDate14()&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">.jar&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;PACKAGE_PATH</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">*.java</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;&amp;&amp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">jar&nbsp;cf&nbsp;bean-all-</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">TABLE_SCHEMA</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">-</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;DateUtil.getCurrentDate14()&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">.jar&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;PACKAGE_PATH</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">*.*</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(cmd);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Process&nbsp;p&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;Runtime.getRuntime().exec(cmd);</span></div>
<p><br />可以看一下控制台输出的代码，您就明白了：</p><span id="Codehighlighter1_3529_3744_Open_Text">
<p></span>cmd /c cd /d d:\db2java\ &amp;&amp; javac -classpath E:\job\workspace\DianLiang\WebRoot\WEB-INF\classes;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\acegi-security-1.0.7.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\activation.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\axis.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\axis-ant.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\bonecp-0.7.1.RELEASE.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\commons-attributes-api.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\commons-attributes-compiler.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\commons-beanutils-1.8.3.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\commons-cli-1.2.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\commons-codec-1.3.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\commons-collections-3.2.1.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\commons-configuration-1.4.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\commons-discovery-0.2.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\commons-fileupload-1.2.1.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\commons-io-2.0.1.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\commons-lang-2.5.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\commons-logging.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\commons-pool-1.4.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\ezmorph-1.0.6.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\freemarker.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\guava-r09.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\javassist.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\jaxrpc.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\jdbcspy.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\jodconverter-2.2.2.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\jodconverter-cli-2.2.2.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\json_simple-1.1.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\json-lib-2.2.3-jdk15.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\juh-3.0.1.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\jurt-3.0.1.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\jxl.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\kaptcha-2.3.2.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\log4j-1.2.15.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\mail.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\mysql-connector-java-5.1.13-bin.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\ognl-2.7.3.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\quartz-2.0.1.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\ridl-3.0.1.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\saaj.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\slf4j-api-1.6.1.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\slf4j-jdk14-1.6.1.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\unoil-3.0.1.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\urlrewrite-3.2.0.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\wsdl4j-1.5.1.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\xstream-1.3.1.jar;E:\job\workspace\DianLiang\WebRoot\WEB-INF\lib\bean-dianliang-20120723181047.jar d:\db2java\com/zzsb/beans/*.java&nbsp; &amp;&amp; jar cf bean-dianliang-20120724232924.jar com/zzsb/beans/*.class &amp;&amp; jar cf bean-source-dianliang-20120724232924.jar com/zzsb/beans/*.java &amp;&amp; jar cf bean-all-dianliang-20120724232924.jar com/zzsb/beans/*.*<br /><br />看看System.getProperty()都为我们提供了什么有用信息吧！<br /><br />
<table style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; margin-left: 36pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid" border="1" cellpadding="0">
<tbody>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.version</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">运行时环境版本</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.vendor</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">运行时环境供应商</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.vendor.url</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">供应商的 URL</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.home</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">安装目录</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.vm.specification.version</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">虚拟机规范版本</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.vm.specification.vendor</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">虚拟机规范供应商</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.vm.specification.name</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">虚拟机规范名称</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.vm.version</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">虚拟机实现版本</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.vm.vendor</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">虚拟机实现供应商</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.vm.name</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">虚拟机实现名称</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.specification.version</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">运行时环境规范版本</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.specification.vendor</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">运行时环境规范供应商</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.specification.name</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">运行时环境规范名称</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.class.version</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">类格式版本号</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.class.path</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">Java </span><span style="font-family: 宋体; font-size: 12pt">类路径</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.library.path</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">加载库时搜索的路径列表</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.io.tmpdir</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">默认的临时文件路径</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.compiler</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">要使用的 JIT 编译器的名称</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">java.ext.dirs</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">一个或多个扩展目录的路径</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">os.name</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">操作系统的名称</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">os.arch</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">操作系统的架构</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">os.version</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">操作系统的版本</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">file.separator</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">文件分隔符（在 UNIX 系统中是&#8220;/&#8221;）</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">path.separator</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">路径分隔符（在 UNIX 系统中是&#8220;:&#8221;）</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">line.separator</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">行分隔符（在 UNIX 系统中是&#8220;/n&#8221;）</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">user.name</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">用户的账户名称</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">user.home</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">用户的主目录</span></p></td></tr>
<tr>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">user.dir</span></p></td>
<td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0.75pt; padding-left: 0.75pt; padding-right: 0.75pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0.75pt">
<p style="text-align: left" align="left"><span style="font-family: 宋体; font-size: 12pt">用户的当前工作目录</span></p></td></tr></tbody></table>本文所提供的方法解决了使用JAVA动态编译现有工程中的源文件的简便方法，顺便说一下有空可以去<a href="http://www.modaotea.com">www.modaotea.com</a> 喝茶，老板人不错，对茶这块很专业，不像我这种苦逼的程序员，无聊透顶啊！<br />文章原创，转载请以超链接形式标明文章原始出处和作者</p>  <img src ="http://www.blogjava.net/ycyk168/aggbug/383890.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ycyk168/" target="_blank">零全零美</a> 2012-07-24 23:44 <a href="http://www.blogjava.net/ycyk168/archive/2012/07/24/383890.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[原创]JBPM源码解读之：Join</title><link>http://www.blogjava.net/ycyk168/archive/2008/11/14/240616.html</link><dc:creator>零全零美</dc:creator><author>零全零美</author><pubDate>Fri, 14 Nov 2008 15:55:00 GMT</pubDate><guid>http://www.blogjava.net/ycyk168/archive/2008/11/14/240616.html</guid><wfw:comment>http://www.blogjava.net/ycyk168/comments/240616.html</wfw:comment><comments>http://www.blogjava.net/ycyk168/archive/2008/11/14/240616.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/ycyk168/comments/commentRss/240616.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ycyk168/services/trackbacks/240616.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:    前面我有一篇《JBPM源码解读之：Fork》，大致分析了JBPM对于Fork的实现方式，其实Fork和Join是不可分割的一对，Fork实现分拆，Join实现汇集。先让我们看一下《JBPM 3.2.3 User Guide》中关于Join的描述：<br> The default join assumes that all tokens that arrive in the join are children of the same parent. This situation is created when using the fork as mentioned above and when all tokens created by a fork arrive in the same join. A join will end every token that enters the join. Then the join will examine the parent-child relation of the token that enters the join. When&nbsp;&nbsp;<a href='http://www.blogjava.net/ycyk168/archive/2008/11/14/240616.html'>阅读全文</a><img src ="http://www.blogjava.net/ycyk168/aggbug/240616.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ycyk168/" target="_blank">零全零美</a> 2008-11-14 23:55 <a href="http://www.blogjava.net/ycyk168/archive/2008/11/14/240616.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[原创]JBPM实践之：并发子流程的实现</title><link>http://www.blogjava.net/ycyk168/archive/2008/11/12/240096.html</link><dc:creator>零全零美</dc:creator><author>零全零美</author><pubDate>Wed, 12 Nov 2008 07:00:00 GMT</pubDate><guid>http://www.blogjava.net/ycyk168/archive/2008/11/12/240096.html</guid><wfw:comment>http://www.blogjava.net/ycyk168/comments/240096.html</wfw:comment><comments>http://www.blogjava.net/ycyk168/archive/2008/11/12/240096.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.blogjava.net/ycyk168/comments/commentRss/240096.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ycyk168/services/trackbacks/240096.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:          关于JBPM中并发子流程的实现方式，网上有很多的说法，但是好像每种办法都有这样那样的缺点，要么实现太复杂，要么就是会使Token无法继续流转。这里我介绍一种我的并发子流程的实现方式：使用TaskNode使任务并行的方式，模拟实现JBPM子流程的并发执行。<br> 我先简单的介绍一下实现思路：<br>         1、数据库中应该有至少三个已经发布过的流程定义(ProcessDefinition)，发布的顺序无所谓，一个主流程两个子流程<br>         2、我们在主流程中要实现并发子流程的环节放置TaskNode，设置create-tasks="false"、signal="last-wait"<br>         3、我们想要实现几个子流程的并发就在第二步放置的TaskNode中放置几个Task，每个Task的名字都是要并发的子流程的名称<br>         4、在TaskNode的Node-Enter action中，我们手动为每一个Task创建一个任务实例，同时我们取得Task的名字也就是要并发的子流程的名字，创建流程实例<br> &nbsp;&nbsp;<a href='http://www.blogjava.net/ycyk168/archive/2008/11/12/240096.html'>阅读全文</a><img src ="http://www.blogjava.net/ycyk168/aggbug/240096.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ycyk168/" target="_blank">零全零美</a> 2008-11-12 15:00 <a href="http://www.blogjava.net/ycyk168/archive/2008/11/12/240096.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JBPM实践之：使用Fork中的Script实现多路路由选择</title><link>http://www.blogjava.net/ycyk168/archive/2008/11/05/238852.html</link><dc:creator>零全零美</dc:creator><author>零全零美</author><pubDate>Wed, 05 Nov 2008 09:05:00 GMT</pubDate><guid>http://www.blogjava.net/ycyk168/archive/2008/11/05/238852.html</guid><wfw:comment>http://www.blogjava.net/ycyk168/comments/238852.html</wfw:comment><comments>http://www.blogjava.net/ycyk168/archive/2008/11/05/238852.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/ycyk168/comments/commentRss/238852.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ycyk168/services/trackbacks/238852.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在阅读本文之前，建议先阅读一下《JBPM源码解读之：Fork》以了解Fork中Script的配置方法及处理方式：<br>        按照Fork对Script的规范Script必须包含一个具有write权限的变量，而且该变量必须实现java.util.Collection接口。&nbsp;&nbsp;<a href='http://www.blogjava.net/ycyk168/archive/2008/11/05/238852.html'>阅读全文</a><img src ="http://www.blogjava.net/ycyk168/aggbug/238852.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ycyk168/" target="_blank">零全零美</a> 2008-11-05 17:05 <a href="http://www.blogjava.net/ycyk168/archive/2008/11/05/238852.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[原创]JBPM源码解读之：Fork</title><link>http://www.blogjava.net/ycyk168/archive/2008/11/05/238844.html</link><dc:creator>零全零美</dc:creator><author>零全零美</author><pubDate>Wed, 05 Nov 2008 08:41:00 GMT</pubDate><guid>http://www.blogjava.net/ycyk168/archive/2008/11/05/238844.html</guid><wfw:comment>http://www.blogjava.net/ycyk168/comments/238844.html</wfw:comment><comments>http://www.blogjava.net/ycyk168/archive/2008/11/05/238844.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ycyk168/comments/commentRss/238844.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ycyk168/services/trackbacks/238844.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Fork节点在整个JBPM流程运转过程中配合Join使用提供使多于一个的节点如：TaskNode、State等并行运行的作用，很可惜我们不能利用Fork提供的现有机制实现需求中经常遇到的并发子流程的效果，当然虽然JBPM并不支持并发子流程的机制，并不代表我们不能变通的实现，我将在另一篇文章中详细说明我的并发子流程的实现方式。<br>      Fork类的注释中说：if this fork behaviour is not sufficient for your needs, consider writing your own custom TokenHandler.看来连JBPM开发小组也意识到Fork可能不能满足某些特殊的需求。注释中还说Fork节点有三种配置方式，我很奇怪为什么代码中只能找到两种：&nbsp;&nbsp;<a href='http://www.blogjava.net/ycyk168/archive/2008/11/05/238844.html'>阅读全文</a><img src ="http://www.blogjava.net/ycyk168/aggbug/238844.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ycyk168/" target="_blank">零全零美</a> 2008-11-05 16:41 <a href="http://www.blogjava.net/ycyk168/archive/2008/11/05/238844.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JBPM实践之：在流程图上高亮显示指定的任务节点</title><link>http://www.blogjava.net/ycyk168/archive/2008/09/25/231092.html</link><dc:creator>零全零美</dc:creator><author>零全零美</author><pubDate>Thu, 25 Sep 2008 05:30:00 GMT</pubDate><guid>http://www.blogjava.net/ycyk168/archive/2008/09/25/231092.html</guid><wfw:comment>http://www.blogjava.net/ycyk168/comments/231092.html</wfw:comment><comments>http://www.blogjava.net/ycyk168/archive/2008/09/25/231092.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/ycyk168/comments/commentRss/231092.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ycyk168/services/trackbacks/231092.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:   在做流程的流转历史时，通常情况下还是以列表的形式表现，但是这样总是感觉不太直观，JBPM号称是面向图的编程，那么为什么我们不能在流程图上显示我们的流转历史呢，至少我们可以在流程图上高亮显示当前流程执行到了哪个节点，如果能这样的话用户可以很轻松而且一目了然的看到流程的流转情况。<br>  我发现在JBPM自带的例子中有类似的效果，后来无意中又在网上发现了一篇文章《 JBPM图形化流程监控》，作者简单的阐述了图形化流程监控的实现思路，让我欣喜万分，最终决定一试，呵呵，首先让我秀一下战果吧：&nbsp;&nbsp;<a href='http://www.blogjava.net/ycyk168/archive/2008/09/25/231092.html'>阅读全文</a><img src ="http://www.blogjava.net/ycyk168/aggbug/231092.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ycyk168/" target="_blank">零全零美</a> 2008-09-25 13:30 <a href="http://www.blogjava.net/ycyk168/archive/2008/09/25/231092.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>