作为一个初学者来说,搭建好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. Java 网络编程 - 总结概述

    IP地址 IP地址IntAddress 唯一定位一台网络上的计算机 127.0.0.1:本地localhost IP地址的分类 ipV4/ipV6 ipV4:127.0.0.1,4个字节组成:0~25 ...

  2. SpringCloud升级之路2020.0.x版-33. 实现重试、断路器以及线程隔离源码

    本系列代码地址:https://github.com/JoJoTec/spring-cloud-parent 在前面两节,我们梳理了实现 Feign 断路器以及线程隔离的思路,并说明了如何优化目前的负 ...

  3. 动态代理中newProxyInstance中三个参数

     JDK Proxy(代理对象): Proxy.newProxyInstance 方法的三个参数创建代理对象 增强 person对象 使用代理对象代替person 去执行 doCourt方法参数1 类 ...

  4. C# 两个具有相同属性的类赋值

    最近有遇到两个类之间的赋值问题,两个类的属性几乎都一样的,所以写了个通过反射获取属性的然后赋值的方法,把一个类的属性的值赋值给另一个类. 框架是.net 4.5 public static D Map ...

  5. 第三周PTA笔记 回文数+A-B(大数减法)+高精度除法+数楼梯(大数加法)

    回文数 对于一个自然数n,若将n的各位数字反向排列所得的数n1与n相等,则称n为回文数,例如2332. 若给定一个N( 2<=N<=16)进制数M(M的长度在一百位以内),如果M不是回文数 ...

  6. FZU ICPC 2020 寒假训练 5 —— 排序

    P1177 [模板]快速排序 题目描述 利用快速排序算法将读入的 N 个数从小到大排序后输出.快速排序是信息学竞赛的必备算法之一.对于快速排序不是很了解的同学可以自行上网查询相关资料,掌握后独立完成. ...

  7. Python进阶(上下文管理器与with语句)

    /*上下文管理器必须有__enter__和__exit__方法*/ class MyResource: def __enter__(self): print('链接资源') return self / ...

  8. Python基础(定制类)

    文章转载自廖雪峰老师Python课程博客,仅供学习参考使用看到类似__slots__这种形如__xxx__的变量或者函数名就要注意,这些在Python中是有特殊用途的. __slots__我们已经知道 ...

  9. 菜鸡的Java笔记 开发支持类库

    开发支持类库 SupportClassLibrary        观察者设计模式的支持类库                    content (内容)        什么是观察者设计模式呢?   ...

  10. Swift-技巧(六)设置按钮状态并更改

    摘要 按钮是一个宝藏控件,可以在设置的时候就对不同的状态添加图片.文本,甚至更改背景.在不同的展示场景中更改到不同的状态显示就好.恰恰是如何更改状态着实让我懵了一阵,所以记录一下过程.如果没有兴趣了解 ...