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 2.x(五):整合Mybatis-Plus
简介 Mybatis-Plus是在Mybatis的基础上,国人开发的一款持久层框架. 并且荣获了2018年度开源中国最受欢迎的中国软件TOP5 同样以简化开发为宗旨的Spring Boot与Mybat ...
- React Fiber 数据结构揭秘
此章节会通过两个 demo 来展示 Stack Reconciler 以及 Fiber Reconciler 的数据结构. 个人博客 首先用代码表示上图节点间的关系.比如 a1 节点下有 b1.b2. ...
- 使用kubeadm部署Kubernetes集群
一.环境架构与部署准备 1.集群节点架构与各节点所需安装的服务如下图: 2.安装环境与软件版本: Master: 所需软件:docker-ce 17.03.kubelet1.11.1.kubeadm1 ...
- Asp.Net路由重写为用户名或者ID
有一个需求如下:指定某个Area的路由(Area:Wx)在其后面添加用户名或者ID作为URL参数,即像下面的样子: /Wx/xiaoming/ /Wx/xiaoming/photo /Wx/xiaom ...
- Linux万能快捷键与命令
tab键:补全命令 \ :命令折行写 Ctrl+C :结束命令 --help :查看命令详细信息 man :类似于help 比help更加详细. sudo :临时以管理员权限执行命令. 还有吗?
- Java开发笔记(三十六)字符串的常用方法
不管是给字符串赋值,还是对字符串格式化,都属于往字符串填充内容,一旦内容填充完毕,则需开展进一步的处理.譬如一段Word文本,常见的加工操作就有查找.替换.追加.截取等等,按照字符串的处理结果异同,可 ...
- Java 内存模型 JMM 浅析
JMM简介 Java Memory Model简称JMM, 是一系列的Java虚拟机平台对开发者提供的多线程环境下的内存可见性.是否可以重排序等问题的无关具体平台的统一的保证.(可能在术语上与Java ...
- [leetcode](4.21)4. 有效子数组的数目
给定一个整数数组 A,返回满足下面条件的 非空.连续 子数组的数目: 子数组中,最左侧的元素不大于其他元素. 示例 1: 输入:[1,4,2,5,3] 输出:11 解释:有 11 个有效子数组,分别是 ...
- java的常用数据结构
Java中有几种常用的数据结构,主要分为Collection和map两个主要接口(接口只提供方法,并不提供实现),而程序中最终使用的数据结构是继承自这些接口的数据结构类. --- 1. Collect ...
- ASP.NET Core基础1:应用启动流程
先看下ASP.NET Core的启动代码,如下图: 通过以上代码,我们可以初步得出以下结论: 所有的ASP.NET Core程序本质上也是一个控制台程序,使用Program的Main方法作为程序的入口 ...