大雅之堂

Java技术,软件工程,开源软件

 

2007年8月9日

[导入]在Ubuntu上搭建Java开发环境(一) JDK、Ant和Maven安装

目前,Linux越来越流行,已经足以应付我们日常的开发使用需要。Ubuntu是目前市场占有率最大的linux发行版,我们公司在进行软件开发的时候,无论是开发工作站还是运行服务器都是采用Ubuntu操作系统。现在把我们在Ubuntu上面搭建Java开发和运行环境的过程拿出来和大家分享。 以下操作基本上都是在终端窗口中进行。 1、JDK安装 JDK安装有如下步骤: (1)联网安装JDK最新版(1.6版) 输入下述命令安装Java SDK 6以及相关软件: sudo apt-get install sun-java6-bin sun-java6-jdk sun-java6-jre sun-java6-source sun-java6-plugin sun-java6-fonts (2)设置默认的JDK版本 如果系统中安装有多个版本JDK,需要指定默认的JDK版本。在命令行窗口中输入下述命令: sudo update-alternatives –config java 在出现的列表中选择/usr/lib/jvm/java-6-sun/jre/bin/java所在的那一行。 在命令行窗口中输入下述命令: sudo update-java-alternatives -s java-6-sun (3)、修改/etc/jvm文件: sudo gedit /etc/jvm 加入下列内容作为第一行: /usr/lib/jvm/java-6-sun (4)、设置全局变量 修改/etc/environment文件,加入如下内容: JAVA_HOME=/usr/lib/jvm/java-6-sun CLASSPATH=.:/usr/lib/jvm/java-6-sun/lib:/usr/lib/jvm/java-6-sun/jre/lib JAVA_OPTS=’-Xms768m -Xmx768m -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=256m -Djava.awt.headless=true’ PATH=/usr/lib/jvm/java-6-sun/bin:/usr/lib/jvm/java-6-sun/jre/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games LANG=zh_CN.UTF-8 LANGUAGE=zh_CN:zh:en_US:en 注意:上述文件中的每一行分隔符应该是linux换行符而不能是windows换行符,因此千万不能在windows环境下编辑该文件。 2、安装Ant和Maven Ant和Maven是两个最著名的Java构建工具。 (1)软件包安装 它们的安装过程非常简单,在命令窗口中直接输入下述的命令: sudo apt-get install ant ant-optional maven2 (2)设置环境变量 有时候,运行ant或maven的时候会报“内存不足”或“Java堆空间不足”的错误,可以通过设置ANT_OPTS和MAVEN_OPTS环境变量解决。通过如下命令打开/etc/environment文件: sudo gedit /etc/environment 添加下述两行: ANT_OPTS=”-Xmx1024M” MAVEN_OPTS=”-Xms768m -Xmx768m -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=256m”
文章来源:http://www.dayatang.com/wordpress/?p=3

posted @ 2009-04-09 04:30 逍遥游 阅读(1216) | 评论 (0)编辑 收藏

[导入]jBPM 3.2 用户指南 第3章 教程

本教程向你展示用jpdl构造的简单流程和使用API管理流程运行时执行的过程。 本教程的形式是解释一批范例。这些范例着眼于一个特定的主题并包含大量的注解。这些范例也能够在jBPM下载软件包的src/java.examples目录中找到。 最好的学习方式是创建一个项目,并通过创建下面的范例的变体来体验它。 在开始之前,首先下载和安装jBPM。 jBPM包含一个图形设计器工具,可用于创建在这些范例中显示的xml文件。你可以在《下载和安装jBPM》部分找到下载这个图形设计器的指南。你不需要为了完成本教程而使用这个图形设计工具。 Hello World范例 流程定义是一个有向图,由节点(node)和转移(transition)组成。Hello world流程有三个节点。为了看到这些代码片段如何组合在一起,我们从一个简单的流程开始,不使用图形设计工具。下面的图显示hello world流程的图形表示: 图 3.1. Hello world流程图 public void testHelloWorldProcess() { // 本方法显示一个流程定义和此流程定义的执行。这个流程定义有三个节点:一个未命名的 // start状态,一个状态s和一个名为end的结束状态。 // 下面一行将一段xml文本解析为一个流程定义ProcessDefinition。流程定义是对流程 // 的正式描述,表示为一个Java对象。 ProcessDefinition processDefinition = ProcessDefinition.parseXmlString( "<process-definition>" + " <start-state>" + " <transition to='s' />" + " </start-state>" + " <state name='s'>" + [...]
文章来源:http://www.dayatang.com/wordpress/?p=17

posted @ 2009-03-19 22:24 逍遥游 阅读(270) | 评论 (0)编辑 收藏

[导入]jBPM 3.2 用户指南 第2章 入门

本章引导你通过最初的步骤取得jBPM,并提供一个快速启动和运行它的初步的指南。 下载和安装jBPM 要获得最新发布的jBPM第3版,到jBPM jPDL 3 package on Sourceforge.net 站点下载最新版的安装程序(installer)。 jBPM installer 创建一个运行时安装,并能够下载和安装eclipse流程设计器和JBoss服务器。你也可以在没有应用服务器的情况下使用jBPM,但是所有这些组件都已经预先配置好并能够相互协作达到开箱即用,使得你能够对jBPM快速上手。为了启动这个installer,打开命令行窗口,转到你下载的jBPM文件所在的目录,然后键入: java -jar jbpm-installer-{version}.jar 遵从指示一步步进行下去。该安装程序可选下载任何支持的JBoss版本和Eclipse的精确版本。 当把jBPM安装到JBoss的时候,将在服务器配置的deploy目录之下创建一个jBPM子目录。所有jBPM相关文件都集中在这个deploy/jbpm目录中。JBoss安装中的所有其他文件都不会触及到。 你可以使用自己的Eclipse(如果它的版本为3.4以上的话) ,也可以使用安装程序下载的Eclipse。为了在Eclipse中安装图形流程设计器,直接使用Eclipse软件更新机制(Help –> Software Updates –> …) 并指向这个文件designer/jbpm-jpdl-designer-site.zip 即可。 JBoss jBPM社区页面 The jBPM社区页面提供关于到哪里查找论坛、wiki、问题跟踪、下载、邮件列表和源代码仓库等信息的所有细节。
文章来源:http://www.dayatang.com/wordpress/?p=14

posted @ 2009-03-19 22:17 逍遥游 阅读(421) | 评论 (0)编辑 收藏

[导入]jBPM 3.2 用户指南 第1章 导论

JBoss jBPM 是一个灵活的、可扩展的流程语言框架。jPDL是一种建立在这个公共框架之上的流程语言。它是一种直观的流程语言,用任务(tasks)、异步通讯的等待状态(wait states)、定时器(timer)、自动化的动作(action)……等术语来图形化地表示业务流程。jPDL拥有最强有力的、可扩展的控制流机制把这些操作结合在一起。 jPDL的依赖性非常小,能够像使用一个java类库一样容易地使用它。但是,通过把它部署在一个J2EE集群的应用服务器中,也能够把它用在需要极大的吞吐量的环境中。 jPDL能够配置使用任何类型的数据库,部署在任何应用服务器中。 概览 工作流和BPM的核心功能被打包成一个简单的java类库。这个类库包含一个服务,用于管理和执行保存在iPDL数据库中的流程。 图1.1 jPDL组件概览 jPDL套件 本套件包含所有的jBPM组件,打包成一个易于下载的文件形式。它内部包括下列文件夹: config, 用于标准java环境的配置文件。 db, 用于创建数据库的SQL脚本,和数据库兼容性信息。 designer, 用于编制jPDL流程和安装脚本的Eclipse插件(它不包含在单纯的jpdl下载文件中)参见jPDL图形流程设计器部分。 doc, 用户指南和JavaDoc文档。 Examples 范例文件。 lib, jBPM所依赖的类库。要获得进一步的信息,请参考“第三方类库”部分。 server, 一个预先配置好的jBoss应用服务器,在一个控制台web应用中包含了jBPM(不包含在单纯的jpdl下载文件中)。 src, jBPM和身份认证组件的java源代码。 这个预先配置好的JBoss应用服务器安装了下列的组件: Web控制台(web console), 打包为一个web存档(war文件)。此控制台能够由流程参与者和jBPM管理者使用。 工作执行器(job executor) 用于启动定时器和异步消息。在控制台web应用程序中有一个servlet上下文监听器,它启动工作执行器,后者产生一个线程池,用于监测和执行定时器和异步消息。 jBPM数据库, 一个进程内hypersonic数据库,包含jBPM数据表。 一个范例流程, 已经部署到jBPM数据库中。 身份组件(Identity component)类库是控制台web应用的一部分。身份组件的表存在于jBPM数据库中(这些表以“JBPM_ID_”为前缀)。 jPDL图形流程设计器 jPDL也包括一个图形设计器工具,该工具用于创作业务流程,它是一个Eclipse插件。 该图形设计工具的最主要的特征是同时支持业务分析师和技术开发者,从而允许从业务流程建模到实际开发实现的平滑过渡。 该Eclipse插件以一个本地更新站点(普通zip文件)的形式提供,可通过标准的Eclipse软件更新机制安装。jPDL图形流程设计器插件也包含在 JBoss Tools, JBoss Developer Studio 和 SOA Platform.中。 jBPM控制台Web应用程序 JBPM控制台web应用程序有两个目的。首先,它作为中心用户接口,与在流程执行过程中产生的运行时任务进行交互。其次,它是一个管理和监控控制台,能够检视和操控运行时流程实例。 它的第三个功能是业务活动监控,这是一些流程执行的统计信息,这些信息对于管理员找出瓶颈和进行其他种类的优化很有用。 JBPM核心类库 JBoss jBPM核心类库是普通的Java(J2SE)类库,用于管理流程定义和流程实例执行的运行时环境。 JBoss jBPM是一个java类库,因此它能够在任何java环境中使用,例如web应用程序,swing应用程序,EJB,Web Service……等等。 jBPM库也可以打包并暴露为一个无状态会话EJB,这允许集群部署和在极高吞吐量环境下的可缩放性。此无状态会话EJB应该针对J2EE 1.4规范编写,以保证可以部署到任何应用服务器之中。 依据你所使用到的功能,类库 lib/jbpm-jpdl.jar对一些第三方类库如hibernate、dom4j及其它类库有依赖。我们已经做出巨大的努力使得你只需要实际使用到的依赖库。第三方依赖的问题在第四章(部署)中进一步阐述。 JBPM在内部使用hibernate进行持久化。除了传统的o/R映射功能之外,hibernate也解决了不同数据库使用不同SQL方言的问题,使得jBPM可以移植到所有目前流行的数据库之上。 JBoss jBPM API可以从你项目中的任何java软件访问,例如web应用程序,EJB程序, Web Service组件、消息驱动Bean或任何其他java组件等。 JBoss jBPM身份组件 JBoss jBPM能够和任何包含用户和其他组织机构信息的公司目录集成。但是,对于没有提供组织机构信息组件的项目,JBoss jBPM包含了这个身份组件。 该身份组件中使用的模型比传统的Servlet-、EJB-和门户中使用的模型更丰富。 要进一步了解,请参考《身份组件》部分。 JBoss jBPM工作执行器(Job Executor) job执行器是一个用于在标准Java环境下监控和执行job的组件。Job用于定时器和异步消息。在企业环境中,JMS和EJB定时器服务可以用于这一目的。相反,Job执行器能够用在缺乏JMS或EJB的环境中。 Job执行器组件被打包在核心jbpm-jpdl类库中,但是需要以以下的方式之一部署:或者在web应用部署描述符(WEB-INF/web.xml)中注册 JobExecutorLauncher servlet上下文监听器,使得在servlet上下文创建/销毁的时候启动/停止Job执行器;或者开启一个单独的JVM,在其中编程式启动Job执行器。
文章来源:http://www.dayatang.com/wordpress/?p=10

posted @ 2009-03-19 22:08 逍遥游 阅读(300) | 评论 (0)编辑 收藏

[导入]jBPM 3.2 用户指南 写在前面

目前最流行的开源工作流软件有三个:Shark, OSWorkflow和jBPM。jBPM是其中最有前途的。 对jBPM用户指南的翻译,一直都有人在做。但是通常针对的都是jBPM的早期版本(3.0或3.1),而且翻译的谬误和文理不通之处甚多,因此有自己翻译的念头。 不敢说自己翻译的会有多好,毕竟我的英文水平不高,jBPM经验也不多。抛砖引玉吧。如有哪位同仁愿意指正,万分感激。
文章来源:http://www.dayatang.com/wordpress/?p=5

posted @ 2009-03-19 21:51 逍遥游 阅读(160) | 评论 (0)编辑 收藏

导航

统计

常用链接

留言簿(2)

随笔分类

随笔档案

文章分类

文章档案

搜索

最新评论

阅读排行榜

评论排行榜