ubuntu系统中执行java项目的main方法

本文介绍如何使用Maven打包Java应用程序,并将其部署到Linux服务器上运行。文章详细说明了从项目打包、上传到Linux服务器、配置JDK环境、编写及执行Shell脚本来启动Java应用的全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

步骤如下:

1、通过maven(或其他方式)将项目打包成jar包(如果是用maven,应该选择 ***-SNAPSHOT-jar-with-dependencies.jar);

2、将jar包上传至Linux服务器对应的目录中

3、需要确保Linux中安装有JDK

4、编写一个shell脚本,里面应该包含JDK所在的路径、jar包所在的路径、项目的名称信息、日志存储所在的路径、main方法所在的类路径(cn.inbot.thread.TaskDistributor)、applicationContext.xml所在的路径(如果用到spring)

5、执行shell脚本

下面是执行main方法的shell脚本(crawler.sh),注意里面的路径配置:

#!/bin/sh

APP_HOME=$(cd "$(dirname "$0")"; pwd)

JAVA_HOME=/home/zhengxiangwen/download/jdk1.7.0_79

CLASSPATH=$APP_HOME
# add libs to CLASSPATH
for f in $APP_HOME/lib/*.jar; do
  CLASSPATH=${CLASSPATH}:$f;
done


$JAVA_HOME/bin/java -Xmx512m -Xms512m \
         -cp $CLASSPATH \
     -Dclient.encoding.override=UTF-8 -Dfile.encoding=UTF-8 -Duser.language=zh -Duser.region=CN \
     -DappDesc="crawler" \
     -DappName=crawler \
     cn.inbot.thread.TaskDistributor "/$APP_HOME/applicationContext.xml" \
     1 > $APP_HOME/logs/emotionsensorok.log  2>$APP_HOME/logs/emotionsensorerror.log &


下面是Linux服务器上的目录结构,和shell脚本里面的路径是一 一对应的:


下面是java里面的main方法:

 public static void main(String[] args) throws InterruptedException {  
    	
        if(null != args && args.length>0)
	{
    	  ApplicationContext ac = new FileSystemXmlApplicationContext(args[0]);
    	  TaskDistributor taskDistributor = (TaskDistributor)ac.getBean("taskDistributor");
    	}
	else{
	  System.out.println("number of params are not right ... ");
	}
    	
}  


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值