转自:
一、小程序部署在Linux上的步骤:
1、jar包:运行程序所用到的所有的jar包。
2、一些配置文件:如运行用到的xml以及properties等文件。
3、记录程序运行的logs,这些指定的log文件名可以在log4j.properties中配置。
4、启动运行脚本的sh文件。
第一种sh文件格式:
举例一个sh文件如下:
#!/bin/sh
# ----------------------------------------------------------------------------
JAVA_HOME=/usr/java/jdk1.5.0_06
DataCompare_HOME=/usr/local/bbass_application/bbass-compare/
DataCompare_LIB=/usr/local/bbass_application/common-lib/
cd "$DataCompare_HOME"
DataCompare_PATH="$DataCompare_LIB"bbass-interface-4.25.jar:"$DataCompare_LIB"jxl.jar:"$DataCompare_LIB"commons-collections.jar:"$DataCompare_LIB"commons-bbass-dao-4.25.jar:"$Dat
aCompare_LIB"antlr-2.7.4.jar:"$DataCompare_LIB"asm-1.5.3.jar:"$DataCompare_LIB"quartz-1.4.5.jar:"$DataCompare_LIB"spring.jar:"$DataCompare_LIB"commons-logging.jar:"$DataCompare_L
IB"log4j-1.2.8.jar:"$DataCompare_LIB"aopalliance.jar:"$DataCompare_LIB"c3p0-0.8.4.5.jar:"$DataCompare_LIB"cglib-2.1.2.jar:"$DataCompare_LIB"commons-DataCompares.jar:"$DataCompare
_LIB"commons-dbcp-1.2.1.jar:"$DataCompare_LIB"commons-lang-2.0.jar:"$DataCompare_LIB"commons-pool-1.2.jar:"$DataCompare_LIB"dom4j-1.4.jar:"$DataCompare_LIB"edtftpj-1.5.2.jar:"$Da
taCompare_LIB"ehcache-1.1.jar:"$DataCompare_LIB"framework-binding-1.2.jar:"$DataCompare_LIB"ognl.jar:"$DataCompare_LIB"hibernate3.jar:"$DataCompare_LIB"jboss-j2ee.jar:"$DataCompa
re_LIB"ojdbc14.jar
CLASSPATH="DataCompareBasePortBySubRegion_Thread":"$DataCompare_HOME":"$DataCompare_PATH":"$CLASSPATH"
echo "$CLASSPATH"
"$JAVA_HOME"/bin/java -Xms512m -Xmx512m -classpath "$CLASSPATH" com.huaxia.bbass.datacompare.trigger.DataCompareTrigger /"$DataCompare_HOME"/applicationContext-datacompareBasePor
tBySubRegion.xml &
在sh文件中可以说明:
1、指定程序运行的当前路径
2、加载jar包的路径
3、调用jdk的路径
4、可以对该进程取名
5、可以指定分配内存的大小(这个在一些情况下,可以解决内存溢出问题)
上述文件中:变量CLASSPATH中指定的DataCompareBasePortBySubRegion_Thread为进程名,
sh文件中多个并列的路径一般用“:”分隔开。CLASSPATH中指定了所有的路径。
$JAVA_HOME"/bin/java -Xms512m -Xmx512m -classpath "$CLASSPATH"这里引用CLASSPATH变量,后面跟着是jar中存在的启动类,类后面有时会跟着main方法需要的参数。“&”符号是指定该进程可以在后台执行。
第二种部署程序sh文件格式:
#! /bin/sh
JAVA_HOME=/usr/java/jdk1.5.0_06
CLASSPATH=Speedup_MarkState:./
for jar in ../lib/*.jar
do
CLASSPATH=$CLASSPATH:$jar
done
echo "$CLASSPATH"
nohup "$JAVA_HOME"/bin/java -Xms256m -Xmx512m -classpath $CLASSPATH com.huaxia.bbass.speedupMonitor.run.MarkSpeedUpStateRun &
这种格式的区别在于:利用sh脚本语言,循环读取lib包中的jar文件,部署简单。
注意:当读取文件,或者程序运行时,抛出java.lang.OutOfMemoryError: Java heap space错误。
可在.sh文件中设置:-Xms768m -Xmx768m
如:/usr/java/jdk1.5.0_06/bin/java -server -Xms768m -Xmx768m -classpath "$CLASSPATH" com.huaxia.bbass.speedupMonitor.run.SpeedUpMonitor &
windows平台中运行程序可编写bat文件。
二、解决一些web界面报错的方法步骤:
1、现网界面报错
2、可以登录现网web服务器,cd到web项目发布的tomcat下
3、tail -f catalina.out 点击页面按钮,查看异常,根据异常信息找出问题原因。
windows平台下的对应的是bat文件:
格式如下:
@echo off
REM SET UP CLASSPATH
set CLASSPATH=./
set LIB=./lib
FOR %%F IN (./lib/*.jar) DO call :setclasspath %%F
echo %CLASSPATH%
goto :startjava
:setclasspath
set CLASSPATH=%CLASSPATH%;%LIB%/%1
goto :eof
:startjava
java -classpath %CLASSPATH% RefreshPortForAdslplus
三、部署web项目到公司测试环境
linux:安装好linux下的tomcat,将本地测试正常的web功能打成war包,上传到公司测试服务器的/tomcat/webapps下,
检查好目录/tomcat/conf/server.xml配置好的端口号,启动/tomcat/bin/startup.sh文件,日志在/tomcat/logs/catalina.out中,
即可页面访问。
注意:1、在Eclipse中的project下的/.settings目录下的.component文件中配置的<wb-module deploy-name="bbass">名称
是部署到/tomcat/webapps下的war包名称。并且有很多时候在项目中会将一些图片的路径写为以这个配置名称开头的绝对路径。
2、访问web项目的url的名称(有时候并不是web工程名)即:hhtp://localhost:8080/bbass中的bbass。
配置方法:在工程名右键---->Properties---->Web Project Settings中设置Context root的值
或者在/.settings目录下的.component文件中配置<property name="context-root" value="bbass"/>的值。
两者一样的效果,并且会联动修改。
3、项目的名称是在工程的.project文件中配置,无论是直接修改工程名还是在.project文件中配置都一样,联动修改。
分享到:
相关推荐
里面很全面的写了如何将java程序部署到Linux下,非常实用的
linux下部署java程序在tomcat下的步骤,适合初学者,里面的步骤是我一步一步操作成功后记录下来的,很详细,希望对初学者有用。
程序部署linux
linux 环境下开发 .net 程序,在linux 环境部署.NET的开发环境
一、前言 4 1.1编写目的 4 1.2相关工具介绍 4 ...本手册为指导客户以及项目技术人员在LINUX操作系统环境下,如何实施部署ORACLE和ECOLOGY程序指导手册。 本手册中的内容都是在虚拟机中模拟客户真实环境。
Linux部署dotnet环境,包括.net core控制台项目和asp.net core项目环境的搭建,包含nginx的安装和部署以及对于asp.net core的代理,supervisor守护程序的安装和部署。
Linux下 部署 web程序的一篇介绍文档,欢迎下载观看。。。。。。。。
Linux(CentOS)下采用配置Mono和Jexus 部署C#、ASP.NET MVC、WCF、WebApi、.NET Core(用户体系一套)
Linux安装WerbSphere Application Server V8.5 1、安装所需要的软件包 agent.installer.linux.gtk.x86_64_1.6.0.zip ...2.2 执行安装程序 ./install 2.3 Installation Manager安装界面中,选中要安装选项。
Linux下Qt部署程序,开发完Qt程序,出安装包时需要把一些动态库拷贝到一起。现有的技术文章对于一个操作系统安装了多个版本Qt的处理不完善。修改现有开源的linuxdeployqt程序的代码支持。 1.txt文件中写你想要使用...
Linux上安装websphere及部署程序
linux下安装mysql注意事项及部署程序须知
Eclipse打包Java应用程序及在Linux系统上的部署运行[归纳].pdf
Linux上安装websphere及部署程序
linux详细安装go环境,并部署go程序
.net Core Job Windows 环境部署,借助nssm.exe第三方组件,.net Core Job Linux部署,借助第三方组件supervisord守护进程。
pentest-env, Pentest环境部署程序( kali linux + 目标) 使用vagrant和主厨 Pentest环境部署器| 这个 repo 提供了一种使用vagrant和virtualbox部署干净和定制的pentesting环境的简单方法。要求我假设你对virtualbox...
linux下tomcat安装 mysql安装及字符编码设置 jdk安装及环境变量设置
Linux上安装部署websphere入门手册,介绍了应用服务器的安装,以及应用服务器上web程序发布
部署 ClickOnce 应用程序 winform