作为一个初学者来说,搭建好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的引用,很烦人,不推荐使用。第二种方案推荐使用。

最新文章

  1. MySQL分表自增ID解决方案(转)
  2. Google Code Jam 2015 R1C B
  3. android开发学习---layout布局、显示单位和如何进行单元测试
  4. HDP2.4安装(五):集群及组件安装
  5. h5 吸顶效果 顶部悬浮
  6. python(4) - 装饰器
  7. 【斜率DP】BZOJ 1911:特别行动队
  8. UBUNTU 关闭iptables的方法
  9. VS2012编译生成XP可以执行的程序
  10. 安装brew
  11. tocken和ticket的数据模型;
  12. PyRedisAdmin v1.0 Beta 发布,Redis 在线管理工具 - 开源中国社区
  13. Android bluetooth介绍(四): a2dp connect流程分析
  14. Tcl与Design Compiler (七)——环境、设计规则和面积约束
  15. 【Java框架型项目从入门到装逼】第九节 - 数据库建表和CRUD操作
  16. 使用js写简易的倒计时
  17. phpstorm显示页面不停的在indexing转圈中,并且文件名还一直在刷新
  18. 打造springboot高性能服务器(spring reactor的使用)
  19. 分析SignalTap的仿真结果
  20. pl/sql美化

热门文章

  1. 【java+selenium3】时间控件 (九)
  2. 03 | 变量的解构赋值 | es6
  3. 远程连接linux | Xshell和Xftp下载安装
  4. Python基础(作用域)
  5. Python基础(使用模块)
  6. Python基础(普通函数及参数)
  7. 18.Java 封装详解/多态详解/类对象转型详解
  8. 教你用SQL进行数据分析
  9. java动态编译——tools.jar问题
  10. [Aizu2993]Invariant Tree