OSGI插件(plugin)web工程建设步骤
- 所有资源下载(汇总)
底包的下载地址:https://pan.baidu.com/s/15JxHOHf0AyZaLKPJUkpeXA 提取码: bujz
web-target.war下载地址: https://pan.baidu.com/s/1zwoSqaPJ6CUGYbv8Nra2jA 提取码: 4rxq
普通web工程下载地址: https://pan.baidu.com/s/1P4KdvupgYPRDPBU5HvyoRg 提取码: phad
- 新建Maven的Web工程



- 生成web工程相关的目录结构
当前的目录结构

生成web工程目录结构的操作步骤





这样就生成Web工程相关的目录结构,如下图所示

- 修改web工程为插件工程(plugin-project)
打开META-INF目录下的MANIFEST.MF文件

源文件内容
Manifest-Version: 1.0
Class-Path:
修改后的文件内容
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: KSZSA Manager web Target
Bundle-SymbolicName: com.kszsa.target
Bundle-Version: 1.0.0.qualifier
Bundle-Vendor: KSZSA
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-ClassPath: WEB-INF/classes
Web-ContextPath: /web-target
关闭MANIFEST.MF文件,并重新打开
关闭之前截图

重新打开之后

这样说明,插件工程配置准确。
- 新建html页面,用户测试


修改index.html文件内容
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>测试首页</title>
</head>
<body> <h2>首页导航</h2>
<p>这是测试页</p>
</body>
</html>
- 打war包,并放入产品底包
产品底包,打包步骤,参考OSGI底包制作过程:https://www.cnblogs.com/dyh004/p/10644123.html


- 把war包,放入底包,并运行
底包的下载地址:https://pan.baidu.com/s/15JxHOHf0AyZaLKPJUkpeXA 提取码: bujz
web-target.war下载地址: https://pan.baidu.com/s/1zwoSqaPJ6CUGYbv8Nra2jA 提取码: 4rxq
把web-target.war放入plugins目录下

运行底包:双击start.bat,运行底包

运行结果

在黑框中,回车,进入osgi命令控制输入状态

安装war包,输入命令:install webbundle:file:plugins/web-target.war

输入ss命令,查看war包状态


说明war包安装成功。
启动war包,命令start 44,并查看war的启动情况


说明war包启动成功。
- 访问界面,查看结果

说明web工程部署成功。
- 把war配置到产品启动项
打开低包configuration目录下的config.ini文件,在文件倒数第二行添加如下内容
plugins/web-target.war@5:start
修改注意事项

修改后的config.ini内容
osgi.bundles=plugins/com.springsource.javax.activation-1.1.1.jar,\
plugins/javax.annotation-1.2.0.v201401042248.jar,\
plugins/javax.ejb-3.1.1.v201204261316.jar,\
plugins/javax.el-3.0.0.20180730.jar,\
plugins/javax.mail-1.4.0.v201005080615.jar,\
plugins/javax.persistence-2.1.0.v201304241213.jar,\
plugins/javax.security.auth.message-1.1.0.20180730.jar,\
plugins/javax.servlet-3.1.0.20180730.jar,\
plugins/javax.servlet.jsp-2.3.0.20180730.jar,\
plugins/javax.transaction-1.1.0.v201205091237.jar,\
plugins/javax.websocket-1.1.0.20180730.jar,\
plugins/javax.xml.rpc-1.1.0.v201005080400.jar,\
plugins/javax.xml.soap-1.3.0.v201105210645.jar,\
plugins/org.apache.catalina-8.5.35.jar,\
plugins/org.apache.catalina.ha-8.5.35.jar,\
plugins/org.apache.catalina.tribes-8.5.35.jar,\
plugins/org.apache.coyote-8.5.35.jar,\
plugins/org.apache.el-8.5.35.jar,\
plugins/org.apache.jasper-8.5.35.jar,\
plugins/org.apache.juli-8.5.35.jar,\
plugins/org.apache.tomcat.api-8.5.35.jar,\
plugins/org.apache.tomcat.jni-8.5.35.jar,\
plugins/org.apache.tomcat.util-8.5.35.jar,\
plugins/org.apache.tomcat.util.scan-8.5.35.jar,\
plugins/org.apache.tomcat.websocket-8.5.35.jar,\
plugins/org.eclipse.jdt.core.compiler.batch-3.12.3.v20170228-1205,\
plugins/org.eclipse.virgo.util.common-3.6.3.RELEASE.jar,\
plugins/org.eclipse.virgo.util.io-3.6.3.RELEASE.jar,\
plugins/org.eclipse.virgo.util.math-3.6.3.RELEASE.jar,\
plugins/org.eclipse.virgo.util.osgi-3.6.3.RELEASE.jar,\
plugins/org.eclipse.virgo.util.osgi.manifest-3.6.3.RELEASE.jar,\
plugins/org.eclipse.virgo.util.parser.manifest-3.6.3.RELEASE.jar,\
plugins/org.slf4j.api-1.7.2.v20121108-1250.jar,\
plugins/org.slf4j.nop-1.7.2.v201212060727.jar,\
plugins/org.eclipse.gemini.web.core-3.0.4.RELEASE.jar@start,\
plugins/org.eclipse.gemini.web.tomcat-3.0.4.RELEASE.jar@start,\
plugins/org.eclipse.gemini.web.jaspic.fragment-3.0.4.RELEASE.jar,\
plugins/org.eclipse.gemini.web.extender-3.0.4.RELEASE.jar@start,\
plugins/org.apache.felix.gogo.command_0.10.0.v201209301215.jar@start,\
plugins/org.apache.felix.gogo.runtime_0.10.0.v201209301036.jar@start,\
plugins/org.apache.felix.gogo.shell_0.10.0.v201212101605.jar@start,\
plugins/org.eclipse.equinox.console_1.1.0.v20140131-1639.jar@start,\
plugins/web-console.war@5:start,\
plugins/web-target.war@5:start
eclipse.ignoreApp=true
修改后,重启产品,直接访问web即可
以上内容是安装插件web工程,关于普通的web工程安装方式需要制定发布路径
普通web工程即新建普通的动态工程,不需要对MANIFEST.MF文件进行修改
普通web工程下载地址: https://pan.baidu.com/s/1P4KdvupgYPRDPBU5HvyoRg 提取码: phad
这种普通web工程,安装时,需要制定工程根路径
osgi> install webbundle:file:simple-war.war?Web-ContextPath=/simple-war
Bundle id is 43
osgi> start 43
OSGI插件(plugin)web工程建设步骤的更多相关文章
- 购物商城学习--第三讲(tomcat插件启动web工程)
此处提到的tomcat插件即maven工程集成的tomcat插件,可以在添加maven的tomcat插件之后,在本地通过脚本或者命令行方式运行web工程,tomcat插件启动只需要修改一个端口即可,非 ...
- (转)淘淘商城系列——使用maven tomcat插件启动web工程
http://blog.csdn.net/yerenyuan_pku/article/details/72672138 上文我们一起学习了怎样搭建maven工程,这篇文章我就来教大家一起学习怎样用to ...
- 搭建maven支持的web工程的步骤
搭建一个新的web project的整体思路:先用maven搭建项目的骨架,生成mvn project,然后将mvn project转换为web project,最后添加相关的Spring,hiber ...
- myeclipse maven tomcat插件 创建web工程
自从有了云笔记,很久不写博客了.今天写了使用Freemarker静态化JSP页面,索性就发出来.初学,勿喷. 这篇文字以前放在云笔记里,当然里面有很多借鉴网络上的东西,而自己也使用Maven很久了,索 ...
- 如何通过Maven的Jetty插件运行Web工程
首先建议使用jetty9,因为据官方文档显示,Jetty 7 and Jetty 8 are now EOL (End of Life),如下.但是由于项目使用的版本一般都比较低,这里以jetty8为 ...
- 如何通过Maven的Tomcat插件运行Web工程
去tomcat官网http://tomcat.apache.org/,左侧栏Apache Tomcat下的Maven Plugin,点进去选择最新版本Version 2.2 通过介绍可知,使用tomc ...
- IntelliJ IDEA——利用maven插件构建web工程
- eclipse+maven+tomcat构建web工程
我们要利用Maven构建一个web应用,开发环境为eclipse+tomcat.构建过程如下: 1.工具准备 eclipse:版本为eclipse 4.2(Juno Service),maven插件的 ...
- (转)淘淘商城系列——使用maven tomcat插件启动聚合工程
http://blog.csdn.net/yerenyuan_pku/article/details/72672389 上文我们一起学习了如何使用maven tomcat插件来启动web工程,本文我们 ...
随机推荐
- Spring Boot(六)集成 MyBatis 操作 MySQL 8
一.简介 1.1 MyBatis介绍 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC代码和手动设置参数以及获取结果集. ...
- Gartner 2018 数据库系列报告发布 巨杉数据库连续两年入选
近期,Gartner陆续发布了2018年的数据库系列报告,包括<数据库魔力象限><数据库核心能力>以及<数据库推荐报告>.其中,SequoiaDB巨杉数据库作为业界 ...
- k8s架构分析(二)--技术流ken
master节点 k8s的集群由master和node组成,节点上运行着若干k8s服务. master节点之上运行着的后台服务有kube-apiserver .kube-scheduler.kube- ...
- c#计算机视觉库openCVSharp
作为研究计算机视觉的一员,大家肯定对Intel大名鼎鼎的openCV系列计算机视觉库耳熟能详,对于很多人来说openCV甚至已经成为其项目研究不可缺少的一部分.但是,由于项目兼容性的要求.openCV ...
- 【开源】SpringBoot&Netty实现仿微信网页版项目更新
阅读本文约“2.3分钟” 项目更新啦!V1.3.0 还记得那个聊天室的小项目吗? SpringBoot 加 Netty 实现聊天室 没错,这次已经完整进行了版本的替换,酥酥聊天室! 基于原项目的改动, ...
- Java_设计模式之享元模式
1.关于享元模式 享元模式有点类似于单例模式,都是只生成一个对象被共享使用.享元模式主要目的就是让多个对象实现共享,减少不会要额内存消耗,将多个对同一对象的访问集中起来,不必为每个访问者创建一个单独的 ...
- Python中文词频统计
以下是关于小说的中文词频统计 这里有三个文件,分别为novel.txt.punctuation.txt.meaningless.txt. 这三个是小说文本.特殊符号和无意义词 Python代码统计词频 ...
- java-同步控制及不可变设置(只读访问)
1.还是直接上代码简单了解一下: package com.synchronize.test; import java.util.ArrayList; import java.util.Collecti ...
- java-初识引用分类及Map实现类WeakHashMap
1.同样的,话不多讲直接上代码 (1)认识了解下引用分类及其作用 package com.otherMapProduce; import java.lang.ref.WeakReference; /* ...
- CSS3 font-face使用
在 CSS3 之前,web 设计师必须使用已在用户计算机上安装好的字体. 通过 CSS3,web 设计师可以使用他们喜欢的任意字体. 当您找到或购买到希望使用的字体时,可将该字体文件存放到 web 服 ...