出了某几点细小的差别,跟Windows的部署是完全一致的,具备通用性
首先,介绍一下部署步骤:
第一:安装jdk
第二:安装tomcat
第三:配置环境变量;在/etc/profile的最后追加:
export JAVA_HOME=/root/jdk1.6.0_01
export JRE_HOME=/root/jdk1.6.0_01/jre
export PATH=$JAVA_HOME/bin:$JRE_HOME/lib:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JRE_HOME
export TOMCAT_HOME=/root/apache-tomcat-5.5.29
第四:部署写好的JavaProject
Java Project的部署相对比较麻烦,
部署步骤如下:
A)从eclipse中将Java Project编译好,然后拷贝出bin文件夹,上传至服务器上即可;
B)需要将所有用到的jar包(我们的jar包放在/usr/lib中),配置到classpath中,如下:
exportCLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JRE_HOME:/usr/lib/activation-1.1.jar:/usr/lib/annogen-0.1.0.jar:/usr/lib/antlr-2.7.7.jar:/usr/lib/axiom-api-1.2.7.jar:/usr/lib/axiom-dom-1.2.7.jar:/usr/lib/axiom-impl-1.2.7.jar:/usr/lib/axis2-adb-1.4.1.jar:/usr/lib/axis2-adb-codegen-1.4.1.jar:/usr/lib/axis2-codegen-1.4.1.jar:/usr/lib/axis2-corba-1.4.1.jar:/usr/lib/axis2-fastinfoset-1.4.1.jar:/usr/lib/axis2-java2wsdl-1.4.1.jar:/usr/lib/axis2-jaxbri-1.4.1.jar:/usr/lib/axis2-jaxws-1.4.1.jar:/usr/lib/axis2-jaxws-api-1.4.1.jar
C)如果入口Java类不是在bin的根目录下,比如:入口在bin/beans/common/startup.class中,我们运行的时候,不应该是
cd bin
cd beans
cd common
java startup
而应该是bin]#javabeans.common.startup
D) 举例:
有如下的类:
这里面使用到了 mysql-connector-java-5.0.8-bin.jar ,把 MysqlTest.class 和 mysql-connector-java-5.0.8-bin.jar 一起放入 linux 目录 /application/mysqltest/ 下面,然后编写启动 shell start.sh
export JAVA_HOME=/usr/java/jdk1.6.0_20
export JRE_HOME=/usr/java/jdk1.6.0_20/jre
export PATH=$JAVA_HOME/BIN:$JRE_HOME/lib:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JRE_HOME:/application/mysqltest/mysql-connector-java-5.0.8-bin.jar
java MysqlTest
运行的时候,只需要执行:sh start.sh 就可以了。
需要注意的是 sh start.sh 跟MysqlTest.class 放在同一个目录下才行,如果要执行的不是一个 class 文件而是一个jar包的话,就把要执行的 jar 包的路径也放入到 CLASSPATH 路径里面,然后运行带有 Main 函数的类就行了。
在Linux下运行可执行Jar包,首先准备jar包,一般的编译工具Eclipse,jbuilder都提供export功能,可以生成jar包。
运行的命令行很简答
java -jar 给定的jar包 [如果运行的jar包需要参数,直接后面依次给出就好]
eg:
java -jar Hello.jar inPut.txt outPut.txt