`
JFires
  • 浏览: 41734 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

3.1下载maven并编译示例

阅读更多

第三章:ActiveMQ例子

本章内容

  • 介绍本书每一个示例
  • 使用Maven来编译和运行这些例子
  • 怎样使用这些例子与ActiveMQ进行交互

ActiveMQ提供JMS规范要求的所有特性并且在这之上,提供了很多有用的特性。这些都在图3.1里描绘出来,并在本书剩下章节讨论。为了说明这些特性,我们提供了两个例子,这两个例子都是从真实商用领域得来的。相比前面的例子,这些例子更完整和简洁地展示ActiveMQ的特性。

     其中一个例子是基于股票投资的,另一个例子是基于工作队列。这两个例子比ActiveMQ自带的例子更广泛地展现ActiveMQ。我们先介绍这些例子的使用场景,接着详细讨论如何使用它们。在你阅读这本书的任何时候,如果你需要回顾这些例子,你都可以回来阅读这一章。

    股票投资例子演示了发布/订阅到消息传送领域。发布者向许多对该消息感兴趣的订阅者广播消息。消息发布到一个叫做主题的JMS目标,在线的订阅者客户端则接收消息。通过这种方式,代理器向每一个订阅者发送消息而不用订阅者去拉消息。每一个在线的订阅者接收到一条消息的副本。除非使用持久订阅,否则订阅者必须在线等待接收消息。在一个主题中,将使用发布/订阅模式将消息的副本发送给每一个订阅者。

    工作队列例子演示里点对点消息传送领域。消息生产者发送消息到一个JMS队列,接收者则从这个队列接收消息。在点对点领域,消息的发送者和接收者没有时序性要求。队列会保存消息直到消费者准备好接收它们。如果消费者准备好,消息将发送给所有消费者,但是不会有两个或以上消费者接收到同一条消息。在点对点领域,队列里的消息通过循环方式发送到消费者。

    不只是不同例子关注的消息传送领域不同,它们对应的使用场景也不同。另外,虽然接下来的例子看起来差不多,但是它们有一个很重要的不同就是应用于不同的消息传送领域。股票投资使用发布/订阅消息传送,而工作队列使用点对点的消息传送。这些例子的代码可以从Manning网站下载,URL:http://manning.com/snyder/activemq-in-action-examples-src.zip。

    在这一章,首先我们会下载Maven并安装它,然后用它来编译和运行示例。之后,我们将回顾每一个例子并解释每一个例子的行为。在完成这些练习后,你将对这些例子有足够的了解可以在本书的其它部分认出它们,并且看看它们是如何被用来演示ActiveMQ特性。

 

3.1 下载Maven并编译例子

下面是下载和安装Maven的步骤:

  1. 从Apache Sofeware Foundation下载Maven,URL:http://maven.apache.org/。Maven提供tar和zip包,依据你操作系统选择不同的包。
  2. 在你的计算机上将压缩包解压到一个永久路径。
  3. 创建一个环境变量M2_HOME,并让它指向Maven目录
  4. 在Unix上,将$M2_HOME/bin目录添加到环境变量(在Windows上,将$M2_HOME/bin目录添加到%PATH%变量里)
  5. 通过运行如下命令确认Maven正确安装。

         $ mvn -version
         Apache Maven 2.2.1 (r801777; 2009-08-06 13:16:01-0600)
         Java version: 1.5.0_19
         Java home: /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home
         Default locale: en_US, platform encoding: MacRoman
         OS name: "mac os x" version: "10.6.2" arch: "i386" Family: "unix"

         如果Maven正确安装,你将看到与上面相似的输出。如果没看到相似输出,你必须先使它正确再进入下一步。你  

         可以在下面的地址获取更多关于安装Maven的说明.http://maven.apache.org/download.html#Installation

 

你必须有因特网连接

要使用这些例子,你必须有因特网连接。因为Maven必须为这些例子下载必须的依赖包。

 

如果你已经成功安装Maven,现在必须解压和编译这些例子了。在把包含源代码的例子解压后,你就可以编译了。现在移动到amq-in-action-example-src目录,然后运行下面的命令。为了将命令与输出区分开,下面的命令将用粗体字显示。

[amq-in-action-example-src] $ mvn clean install
[INFO] Scanning for projects...
[INFO] -------------------------------------------------------------------
-----
[INFO] Building ActiveMQ in Action Examples
[INFO] task-segment: [clean, install]
[INFO] -------------------------------------------------------------------
-----
Downloading: http://localhost:8081/nexus/content/groups/public/org/apache/
maven/plugins/maven-clean-plugin/2.2/maven-clean-plugin-2.2.pom
3K downloaded (maven-clean-plugin-2.2.pom)
...
[INFO] [install:install {execution: default-install}]
[INFO] Installing /private/tmp/amq-in-action-example-src/target/
activemq-in-action-examples.jar to /Users/bsnyder/.m2/repository/org/
apache/activemq/book/activemq-in-action-examples/1.0-SNAPSHOT/

activemq-in-action-examples-1.0-SNAPSHOT.jar
[INFO] Installing /private/tmp/amq-in-action-example-src/target/
activemq-in-action-examples-src.zip to /Users/bsnyder/.m2/repository/org/
apache/activemq/book/activemq-in-action-examples/1.0-SNAPSHOT/
activemq-in-action-examples-1.0-SNAPSHOT-src.zip
[INFO] -------------------------------------------------------------------
-----
[INFO] BUILD SUCCESSFUL
[INFO] -------------------------------------------------------------------
-----
[INFO] Total time: 57 seconds
[INFO] Finished at: Fri Dec 04 22:35:57 MST 2009
[INFO] Final Memory: 24M/44M
[INFO] -------------------------------------------------------------------
-----

由于输出信息太多,上面省略了一些。上面的信息说明了编译成功。当你看到BUILD SUCCESSFUL信息的时候,你就可以进入下面的学习了。如果你看到BUILD FAILURE,你必须找出出错原因并且解决后才能进入下一步。

  • 大小: 18.1 KB
1
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics