一:一般我们在Eclipse下写的Maven项目,需要导出来,压缩成jar,方便后面使用。

第一部分:在windows下运行:

步骤1:Eclipse 中右击我的的项目->export :

maven 将额外lib打包进target 将maven项目打包成jar包_Maven部署

步骤2:下一步,以我的项目为例,记得.settings、.classpath、.project不打勾。然后再下一步

maven 将额外lib打包进target 将maven项目打包成jar包_jar_02

步骤3:输入你的main函数所在的类名。因为后面在manifest.mf文件里面是要指明jvm从哪个类开始执行的。不然jvm找不到!

maven 将额外lib打包进target 将maven项目打包成jar包_Maven_03

步骤4:Finish后 jar包出来啦。我这里导出到了桌面!

 

二:因为是maven项目,所以这里都没有直接添加外部jar包,但项目里是用到了很多jar。所以我们得把这些jar

实实在在地下载下来!。

方法一:cd到项目目录,然后输入 mvn dependency:copy-dependencies 命令 即可把该项目所用到的jar包全部下载下来。

下载成功后,会出现在你项目目录的target/dependency 里面。

方法二:eclispe Run as -->Maven install  也能达到同样的效果

maven 将额外lib打包进target 将maven项目打包成jar包_Maven_04

 

三:整合   我们把上面压缩到的项目jar包 以及 外部的依赖包放入同一文件。如

 

maven 将额外lib打包进target 将maven项目打包成jar包_linux部署_05

dependency里面是所有的依赖jar包。而spider.jar是我们上面用eclipse所导出的项目jar包。

步骤1:修改spider.jar包里面的MANIFEST.MF 文件,在META-INF文件夹里面。

Spider.jar可以用winrar打开,然后修改里面的文件

maven 将额外lib打包进target 将maven项目打包成jar包_Maven部署_06

修改MANIFEST.MF后如下。主要是添加了一行Class-Path 把依赖包引入进来了。

这里注意下Class-Path:  后面一定要有一个空格。不然无法识别。

maven 将额外lib打包进target 将maven项目打包成jar包_linux部署_07

步骤2“修改完成后,点击保存。 然后我们得要新建一个批处理文件,来执行这个jar包。如下:、

设置一下最大、最小堆内存,以及引入项目jar即可。

maven 将额外lib打包进target 将maven项目打包成jar包_Maven部署_08

步骤3:双击start.bat 文件,运行

maven 将额外lib打包进target 将maven项目打包成jar包_Maven部署_09

好了,可以看到已经成功运行起来了!到此,把maven项目导出成jar,并在外部运行的步骤已经完成!

 

第二部分:在linux下运行

这里先说一下,我这里是把单机程序部署到linux上运行,而不是web程序。

web程序一般导出成war包,直接放到linux平台下的tomcat文件夹下的webapps文件夹即可。之后打开linux浏览器,操作跟windows 完全一样。

步骤1:使用FileZilla 把刚才的项目文件发送到linux虚拟机中

我的在: /home/project/spider

maven 将额外lib打包进target 将maven项目打包成jar包_linux部署_10

步骤2:编写一个 start.sh 脚本文件  vi  start.sh

#!/bin/bash
APP_HOME=/home/project/spider #项目文件存放路径
APP_CLASSPATH=$APP_HOME/dependency #项目jar包路径
jarList=$(ls $APP_CLASSPATH|grep jar) #获取所有jar包
echo $jarList #遍历引用架包
for i in $jarList
do
APP_CLASSPATH="$APP_CLASSPATH/$i":
done
echo $APP_CLASSPATH
export CLASSPATH=$CLASSPATH:$APP_CLASSPATH
echo $CLASSPATH
#java -Xms200m -Xmx400m com.guangdubianli.httpclientTest #设置运行内存 和项目运行的mian类
java -Xms200m -Xmx400m -jar spider.jar
echo Linux Test End
exit

PS:这边我引用main类  java -Xms200m -Xmx4000m com.guangdubianli.httpclientTest #设置运行内存 和项目运行的mian类,总是提示找不到此类。。。我也不知怎么解决。。。

步骤3:使用 sh start.sh命令运行,成功!

 

最后:在修改MANIFEST.MF那一段 如果项目有有非常多的jar,这样手动一个个添加真累啊。。。。有哪位有更好的办法吗?,欢迎评论留言指导。