dubbo服务提供者的Maven构建流程
来源:互联网 发布:win10 禁用windows 键 编辑:程序博客网 时间:2024/04/30 08:24
整个流程分为【打包流程】和【启动流程】
【打包流程】:
=============================
=============================================
采用
cd/d %~dp0
mvnassembly:assembly
进行编译打包。
=====================================
之后 这个命令会找到 pom.xml
pom.xml内容中assembly打包配置如下:
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptor>src/main/assembly/assembly.xml</descriptor>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
=========================================
之后assembly插件会根据pom.xml中的配置找到assembly.xml配置文件
pom.xml配置的参数如下图:
===============================================================
我们大概可以知道了assembly的功能其实就根据assembly.xml所配置的,把指定目录的文件复制到另一个指定的目录(不存在的文件会帮我们创建)
assembly.xml内容如下:
<!--
- Copyright 1999-2011Alibaba Group.
-
- Licensed under theApache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-->
<assembly>
<id>assembly</id>
<formats>
<format>tar.gz</format>
</formats>
<includeBaseDirectory>true</includeBaseDirectory>
<fileSets>
<fileSet>
<directory>src/main/assembly/bin </directory>
<outputDirectory>bin</outputDirectory>
</fileSet>
<fileSet>
<directory>src/main/ conf</directory>
<outputDirectory>conf</outputDirectory>
</fileSet>
</fileSets>
<dependencySets>
<dependencySet>
<outputDirectory>lib</outputDirectory>
</dependencySet>
</dependencySets>
</assembly>
===============================================================================
assembly执行完毕就会得到如下目录结构
整个打包流程到这里结束了
===============================
下面讲的是启动流程
【启动流程 】:
上一个打包流程的bin目录有很多启动脚本,它会对打包的文件进行操作,这些脚本依赖于打包流程的配置的目录结构。
@echo off & setlocal enabledelayedexpansion
set LIB_JARS=""
cd ..\lib
for %%i in (*) do set LIB_JARS=!LIB_JARS!;..\lib\%%i
cd ..\bin
if ""%1"" == ""debug"" goto debug
if ""%1"" == ""jmx"" goto jmx
java -Xms256m -Xmx512m -XX:MaxPermSize=64M -classpath ..\conf;%LIB_JARS% com.framework.loippi.Main
goto end
:debug
java -Xms256m -Xmx512m -XX:MaxPermSize=64M -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n -classpath ..\conf;%LIB_JARS% com.framework.loippi.Main
goto end
:jmx
java -Xms256m -Xmx512m -XX:MaxPermSize=64M -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -classpath ..\conf;%LIB_JARS% com.framework.loippi.Main
:end
pause
上图配置中的这个main函数其实就是dubbo的container
而dubbo的main好处就是比tomcat节省资源,比我们直接用spring启动多了优雅关闭和优雅开启功能···这点官方文档有描述
另外官方的主线程等到不是用system.in.read()-__-||
而用同步锁等待
-----------------------------------------------------
另外提一下
spring container的 自动加载spring配置的目录默认是:META-INF/spring目录
附官方文档
0 0
- dubbo服务提供者的Maven构建流程
- 使用maven创建dubbo的提供者
- Dubbo的提供者服务如何发布?
- 使用maven构建Dubbo服务的可执行的jar包
- Dubbo之使用Maven构建服务的可执行jar包
- maven构建dubbo服务的可执行jar包
- 使用maven构建dubbo服务的可执行jar包
- dubbo 服务提供者初始
- 使用maven构建dubbo服务jar包
- Dubbo服务的运行方式(使用maven构建dubbo可执行的jar包)
- dubbo服务提供者暴露一个服务的详细过程
- 跟我学习dubbo-使用Maven构建Dubbo服务的可执行jar包(4)
- dubbo 搭建 服务提供者(五)
- dubbo 服务提供者 心跳机制
- dubbo--服务提供者类图
- Dubbo服务暴露的流程
- dubbo服务提供者在tomcat启动失败的问题
- dubbo 人工管理服务提供者的上线和下线
- 09上机练习1
- hdu2096小明A+B
- 二值图像的腐蚀和膨胀
- Oracle Data Guard 理论知识
- 安卓系统6.0安装程序闪退,控制台下没有报错信息、
- dubbo服务提供者的Maven构建流程
- 【java学习记录】8.输入三角形的三条边,计算三角形的周长
- 文章标题
- 测试使用word发布新浪博客
- 获得系统时间
- HDU 1559 二维树状数组
- Python __future__ 模块
- 最小二乘曲线拟合matlab实现
- ImageLoader的简易配置