作为一个初学者来说,搭建好Spring.DM 的web开发环境还是有些麻烦的。我就遇到了N多麻烦,走了很多弯路。本文介绍了2种比较简单的搭建Spring.DM OSGi web开发环境的搭建.

 

第一种方法

和上一篇文章相似,请移步这里:Spring.DM版HelloWorld

首先引用spring-osgi-2.0.0.M1文件夹中的dist和lib文件夹种的包(不清楚了,请看Spring.DM版HelloWorld 种的环境准备章节),具体引用后的包效果如下:

图1

配置"运行选项”,eclipse菜单:Run->Run Configurations…,就会出现运行配置的窗口,在左面的面板中右键点击“OSGi Framework”,点击“New”,如下图所示

图2

然后点击上图中的:Run按钮,就可以看到如下结果:

图3

通过上图可以看到,Tomcat已经成功启动,已经具备了开发的环境。

但是现在有一个问题就是,在图2种点“Validate Bundles”按钮会出现一些缺少的依赖包,如下图所示,在这一步可以先不管,tomcat也可以起来,我们将在第2种方法的时候

来解决这个问题。

图4

第2种方法

思路:不用默认的Target Platform,自己定义一个文件夹,把相关的jar包放到这个文件件中,然后新建一个Target Platform并设置为默认,当运行时就会使用这个Target Platform来运行。接下来我们开始。

首先建一个文件夹"Target_Spring_web”(大家可以随便起名字),然后把需要的jar包放进去,最终结果如下图所示:

图5

然后Eclipse种菜单:Windows->Preference,打开如下窗口,选择左面面板中的点击“Target Platform”,如下图所示,点击“Add”按钮如图7所示

图6

图7

在上图中选择“Nothing:start with an empty target definition”,然后点击"Next”按钮,就会启动Target定义界面,如下图所示,

图8

在上图中点击“Add”按钮,就会出现添加内容的界面如下图所示,然后我们选择“Directory”,点击“Next”

图9

图10

在上图中,点击“Browse”浏览我们刚才建的Target_Spring_web,就会看到该目录里面的jar包,如下图所示,点击“Finish”按钮,完成添加;

图11

图12

在上图12中就可以看到我们Target_Spring_web目录中的19个jar包,然后选择“Content”选项卡,如下图所示,选中了19个plug-ins,点”Finish“,完成Target创建。

图13

图14

在上图中可以看到我们创建好的Target Platform,然后选中它,点“Apply”,再点“OK”,完成创建。

好了,我们接下来创建运行配置项,Eclipse菜单:Run->Run Configurations…,会出现运行配置页面,在OSGi Framework上点右键,选择“New”创建一个,我修改Name为Spring_web,大家可以按照自己的习惯修改,选中19个bundles,点验证,会提示,没有检测到依赖项,如下图所示,然后点"Apply”,点“Run”,见证奇迹的时刻就到了!

我们可以看到的运行结果如下:

注意事项

我们在Spring.DM版HelloWorld中遇到了日志异常的问题,在网上也找了好多解决的方法,有的是建立一个Fragment project,来消除日志异常的问题,现在不用了,

大家可以看图5中的用红色框住的bundle,版本改成了:com.springsource.org.apache.commons.logging-1.1.1.jar,就好了。

心得体会

配置环境还有一种就是,使用OSGi对spring IDE的支持,大致原理和第2中方法一样,就是OSGi的版本和我们的就不一样了。第一种方法比较简单,但是会在项目中出现好多的bundle的引用,很烦人,不推荐使用。第二种方案推荐使用。

Spring.DM web开发环境搭建的更多相关文章

  1. 【转载】Maven+druid+MyBatis+Spring+Oracle+Dubbo开发环境搭建

    原地址:http://blog.csdn.net/wp1603710463/article/details/48247817#t16 Maven+druid+MyBatis+spring+Oracle ...

  2. Web开发环境搭建 Eclipse-Java EE 篇

    Web开发环境搭建 Eclipse-Java EE 篇 [原创内容,转载注名出处] 1. 下载和安装 1.1 下载JDK 在Java官方网站下载最新版本的 Java SE:  http://www.o ...

  3. 《Node.js入门》CentOS 6.5下Node.js Web开发环境搭建笔记

    近期想尝试一下英特尔的基于WebRTC协同通信开发套件,所以须要在本地搭建Node.js Web的开发測试环境. 这里讲的是CentOS 下的搭建方法.使用Windows的小伙伴请參考: <No ...

  4. 记录一下Web开发环境搭建 Eclipse-Java EE 篇

    转自https://www.cnblogs.com/yangyxd/articles/5615965.html Web开发环境搭建 Eclipse-Java EE 篇 [原创内容,转载注名出处] 1. ...

  5. Spring+Maven+Dubbo+MyBatis+Linner+Handlebars—Web开发环境搭建

    本文主要分三部分,分别是:后台核心业务逻辑.桥梁辅助控制和前台显示页面. 本Web开发环境综合了多种工具,包括Maven包管理与编译工具.Dubbo分布式服务框架.MyBatis数据持久化工具.Lin ...

  6. ubuntu的web开发环境搭建

    为了保持mac的干净整洁,决定用PD搭建一条web开发环境,记下整个过程. ubuntu 首先是操作系统,本着习惯就好的原则,选用了Ubuntu server 12.04.4版.系统的安装很简单,ht ...

  7. OSGI的WEB开发环境搭建

    第一步,搭建OSGI环境: 打开eclipse,点击run->run configration..,配置如下,点击run. 运行结果如下图所示:说明OSGI环境搭建完毕. 第二步:搭建基于OSG ...

  8. 如何学习web开发环境搭建和脚手架

    Web前端的学习路线 第一阶段: HTML+CSS: HTML进阶.CSS进阶.div+css布局.HTML+css整站开发. JavaScript基础: Js基础教程.js内置对象常用方法.常见DO ...

  9. JAVA WEB开发环境搭建

    JAVA WED开发环境搭建 JDK的安装和配置 到https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-21 ...

随机推荐

  1. ELK集群之elasticsearch(3)

    Elasticsearch-基础介绍及索引原理分析 介绍 Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene(TM) 基础上的搜索引 ...

  2. jmeter 数据库压力测试之MySql

    1.首先下载合适的数据库驱动:https://mvnrepository.com/artifact/mysql/mysql-connector-java 2.创建testplan,并添加jar包 3. ...

  3. Docker学习:起步篇

    Docker-概述 学习资源 最好的资源在官网! Docker官方: Docker 官方主页: https://www.docker.com(opens new window) Docker 官方博客 ...

  4. 解决虚拟机linux系统全屏问题

    修改设置 1) 如下图右单击虚拟机名,选择[settings-],调出虚拟机设置界面. 2) 在设置界面选择[hardware]->[CD/DVD2(IDE)]->[Connection] ...

  5. vue监听器watch & 计算属性computed

    侦听器watch vue中watch是用来监听vue实例中的数据变化 watch监听时有几个属性: handle:其值是一个回调函数,就是监听对象对话的时候需要执行的函数 deep:其值true 或者 ...

  6. 带你理解MST性质

    写在前面 最小生成树的引出 假设要在n个城市之间建立通信联络网,则连通n个城市需要n-1条线路.在这种情况下,我们自然需要考虑一个问题,如何在最节省经费的条件下建立这个网络? 很自然地我们会想到,将各 ...

  7. xpath的chrome插件安装,xpath基本语法

    xpath插件安装: 注意:提前安装xpath插件 (1)打开chrome浏览器 (2)点击右上角小圆点 (3)更多工具 (4)扩展程序 (5)拖拽xpath插件到扩展程序中 (6)如果crx文件失效 ...

  8. python实现开闭操作

    目录: 开闭操作的作用 (一)开操作 (二)闭操作 (三)开操作完成其他任务 (1)提取水平垂直线 (2)消除干扰线 (3)提取满足要求的形状 开闭操作的作用: (一)开操作(特点作用:消除噪点--- ...

  9. [Comet1790]Ternary String Counting

    令$f_{i,j,k}$表示前$i$个位置,三种字符最后一次出现的位置为$i,j$和$k$(保证$k<j<i$)的方案数 考虑转移(递推),即分为两步-- 1.填写第$i$个字符,即从$f ...

  10. [loj3146]路灯

    显然,能从$l$到$r$当且仅当$[l,r)$中的灯全部都亮,以下不妨令询问的$r$全部减1 当修改节点$x$时,找到包含$x$的极大的灯(除$x$以外)全部都亮的区间$[l,r]$,即令$l_{0} ...