作为一个初学者来说,搭建好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. 在idea中使用eclipse的快捷键

    settings -> keymap 常用 单行注释 Ctrl + / 多行注释 Ctrl + Shift + / 待更新 不常用(但方便) 撤销 Ctrl + Z 反撤销 Ctrl + Y 查 ...

  2. 组件通过props属性传值

    组件之间的传值 组件是一个单独功能模块的封装,有属于自己的data和methods,一个组件的 data 选项必须是一个函数 为什么必须是函数:因为只有当data是函数时,不同实例调用同一个组件时才会 ...

  3. webpack 之 js语法检查eslint

    webpack 之 js语法检查eslint // 用来拼接绝对路径的方法 const {resolve} = require('path') const HtmlWebpackPlugin = re ...

  4. Android ANR从原理到日志分析,记下来就够了

    站在巨人的肩膀上可以看的更远 做一个优秀的搬运工 Android 彻底理解安卓应用无响应机制 Android ANR日志分析全面解析 优秀的文章不可独享,要扩散,要做好笔记,哈 <沁园春长沙&g ...

  5. python实现Canny边缘检测

    一,定义与概述 使用图像梯度的算法,在有些场景不适用,如检测大量头发边缘,边缘不够细腻.所以有人提出了Canny算法! 非极大值抑制,保留极大值 参考:https://www.cnblogs.com/ ...

  6. [cf787E]Till I Collapse

    考虑对询问分块,对于i<K的询问,暴力处理,时间复杂度为o(Kn):对于i>K的询问,发现答案都小于n/K且满足单调性,那么可以二分出每一段相同的答案,时间复杂度为$o(n^{2}log_ ...

  7. [bzoj5294]二进制

    首先可以发现$2^k$模3意义下有循环节,也就是1,-1,1,-1--考虑对于x个1,y个0,判断是否存在3的倍数1.x为偶数时一定可以,选择等量的1和-1即可2.x为奇数,要满足$x\ge 3$且$ ...

  8. 如何删除一个win10的服务

    使用场景: 之前电脑玩腾讯qq微端游戏,后来卸载残留服务一直在后台占用系统资源.那么如何关闭这个服务呢. 1.首先 管理员运行--cmd.exe 2.打开任务管理器,找到服务名称,如果服务开启可以关闭 ...

  9. Python之99乘法表代码

    #coding=utf-8 #左下三角格式输出九九乘法表 for i in range(1,10):      for j in range(1,i+1):          print " ...

  10. Terminator--最强Ubuntu终端

    个人使用的一个非常好用的Ubuntu终端软件. Terminator的安装和配置 安装 Ubuntu sudo add-apt-repository ppa:gnome-terminator sudo ...