类 JarDeployer
java.lang.Object
com.walker.infrastructure.utils.JarDeployer
JAR自定义组件部署者
此组件能够把打包好的jar文件中的所有文件(或者指定文件)解压到指定的地方,
通常是classpath下面。打包的文件是符合标准的*.jar,但里面具体内容并不一定
是编译好的class也能是一些资源文件,如:图片、js、css等。
最初编写的目的是把用户web项目lib中的组件内容解压的系统webroot目录中。
- 作者:
- shikeying
-
字段概要
字段修饰符和类型字段说明static final Stringstatic final String返回系统classpath的根路径 如:d:/webapp/demo/WEB-INF/classes/static final Stringstatic String部署jar的前缀,有默认值,也可设置尚未部署的应用jar集合已经部署过的jar列表,key = jarName, value = 解压时间毫秒值static final String返回web应用程序lib路径,如:d:/webapp/demo/WEB-INF/lib/static final String返回系统web应用程序的根路径,如:d:/webapp/demo/static final String -
方法概要
修饰符和类型方法说明static booleancheckDeployStatus(String deployJarPrefix) 检查部署情况,如果不存在classpath:walker-deploy.properties文件说明初始化,需要直接跳转到部署页面;
如果已经存在了,还需要检查lib下面的相关jar是否与文件中的对应,因为有可能会新添加文件;static final voidcreateEmptyFile(String filepath) 创建空文件voiddecompress(String fileName, String outputPath) deploy()解压并部署文件解压并部署文件static final boolean返回部署状态,如果已经部署成功,返回trueabstract String返回目的路径,即:要拷贝文件的路径static final List<Properties>getJarRootResources(String jarFileName, String resourcePrefix) 返回给定jar包中特定属性文件的内容,可能会有多个,因此返回集合getMatchDeployedJars(String deployJarPrefix) 返回找到的应用可部署的jar集合abstract String返回原始目标路径,即:要读取JAR文件的路径static final JarDeployergetWebappLibInstance(String jarName) 创建web项目发布者实现对象,从lib目录中找jar包,并解压到webroot中static String返回WEB应用程序的lib目录的绝对路径static void~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ test code ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~voidsetJarName(String jarName) static final void更新jar部署包的时间戳,并记录到文件。
-
字段详细资料
-
DEPLOY_JAR_PREFIX
部署jar的前缀,有默认值,也可设置 -
DEPLOY_FILENAME
- 另请参阅:
-
DEPLOY_WAIT_FILES
尚未部署的应用jar集合 -
DEPLOYED_FILES
已经部署过的jar列表,key = jarName, value = 解压时间毫秒值 -
classpathAbsolute
返回系统classpath的根路径 如:d:/webapp/demo/WEB-INF/classes/ -
webappRootAbsolute
返回系统web应用程序的根路径,如:d:/webapp/demo/ -
webappLibAbsolute
返回web应用程序lib路径,如:d:/webapp/demo/WEB-INF/lib/ -
CLASSES_PATH
- 另请参阅:
-
WEBINF_PATH
- 另请参阅:
-
-
方法详细资料
-
setJarName
-
getWebappLibInstance
创建web项目发布者实现对象,从lib目录中找jar包,并解压到webroot中- 参数:
jarName-- 返回:
-
deploy
解压并部署文件 系统会把 webapp/WEB-INF/lib 路径中的jar文件中的所有内容解压到 webapp/下面。- 返回:
-
deploy
解压并部署文件 系统会把输入路径中的jar文件中的所有内容解压到目的地。- 参数:
srcPath- 源路径,如:d:/srcdestinationPath- 目的地路径,如:d:/webroot- 返回:
-
decompress
-
getSourcePath
返回原始目标路径,即:要读取JAR文件的路径- 返回:
-
getDestinationPath
返回目的路径,即:要拷贝文件的路径- 返回:
-
getWebLibPath
返回WEB应用程序的lib目录的绝对路径 如:d:/test/webapp/WEB-INF/lib/- 返回:
-
getDeployedStatus
public static final boolean getDeployedStatus()返回部署状态,如果已经部署成功,返回true- 返回:
-
checkDeployStatus
检查部署情况,如果不存在classpath:walker-deploy.properties文件说明初始化,需要直接跳转到部署页面;
如果已经存在了,还需要检查lib下面的相关jar是否与文件中的对应,因为有可能会新添加文件; -
createEmptyFile
创建空文件- 参数:
filepath-- 抛出:
IOException
-
getMatchDeployedJars
返回找到的应用可部署的jar集合- 参数:
deployJarPrefix- 可部署的jar文件名前缀,如:walkersoft-resource-- 返回:
-
updateDeployedJarTimestamp
更新jar部署包的时间戳,并记录到文件。- 抛出:
IOExceptionException
-
getJarRootResources
返回给定jar包中特定属性文件的内容,可能会有多个,因此返回集合- 参数:
jarFileName- jar包的文件名,全路径resourcePrefix- 指定属性文件的前缀,如:app_- 返回:
-
main
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ test code ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~- 参数:
args-- 抛出:
Exception
-