项目上线部署的时候,领导要求直接jar包运行,特此研究了一下。
前期准备:
1.待运行的jar包:ROOT.jar
2.装好了jdk的linux环境
具体操作如下:
在/home/greatwall目录下建立一个项目jar目录用于存放我们打的包
将打包好的jar包上传到localJar目录下,注意打包时的项目端口号,我用的是9080端口
检查当前是否有进程占用待启动项目的端口号,如果没有可以考虑启用项目了,如果有,需杀掉此进程释放9080端口号
停止运行jar包也是此操作
启用项目jar,注意此处需要nohup后台启动项目,否则关闭服务器会导致项目停止运行
nohup Java -jar 包名.jar & //意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行
可以查看通过查看nohup.out来查看项目启动情况,也可以查看项目配置的日志路径来查看
日志显示缺少达梦驱动(项目用到了达梦驱动,maven下不下来,我给单独放在了lib包下,打包估计没打进来)
我的解决方案是,首先查看当前linux服务器的jdk安装路径
命令最后一行可看到我的jdk装在了/usr/java/jdk1.8.0.231目录下,将lib下的达梦驱动jar包放到 jdk所在目录/jre/lib/ext目录下即可
此时再次运行nohup java -jar xxx.jar & 命令即可 正常启动
创建parent项目
1.打开IDEA,注意这里不要勾选模板,用模板创建过maven项目的小伙伴都知道模板创建项目非常慢,所以这里不要选模板,需要的文件夹我们后面自己来创建就可以了。所以这个页面直接点击下一步。
如此之后我们的parent就算创建好了,parent创建好之后,接下来创建子模块
选中parent项目,右键单击new->Module
这里继续不选择模板,直接点击下一步:
对比pom文件
itcast_p2p_action为web项目,我们看看如何将child2改造为一个web项目
再修改web.xml文件的路径,如下;
项目构建
接下来我们itcast_p2p_cache模块中提供一个方法,然后在itcast_p2p_action中来调用,我们看看如何实现
在itcast_p2p_action中引用itcast_p2p_cache模块,修改child2的pom.xml文件即可
在itcast_p2p_action中添加index.jsp页面,在该页面中调用child1模块中的方法,内容如下
修改itcast_p2p_action的pom.xml文件,使之在构建时生成war文件,child1的不用修改(默认生成jar文件)
做好这一切之后,在IDEA的右侧边栏找到Maven Project 点开,找到parent项目,点开LifeCycle,双击package,如下
项目构建成功之后,在itcast_p2p_action的目录下生成了一个target目录,该目录下有一个war文件,这就是我们要运行的war文件
项目运行
运行结果如下
创建parent项目
1.打开IDEA,注意这里不要勾选模板,用模板创建过maven项目的小伙伴都知道模板创建项目非常慢,所以这里不要选模板,需要的文件夹我们后面自己来创建就可以了。所以这个页面直接点击下一步。
如此之后我们的parent就算创建好了,parent创建好之后,接下来创建子模块
选中parent项目,右键单击new->Module
这里继续不选择模板,直接点击下一步:
对比pom文件
itcast_p2p_action为web项目,我们看看如何将child2改造为一个web项目
再修改web.xml文件的路径,如下;
项目构建
接下来我们itcast_p2p_cache模块中提供一个方法,然后在itcast_p2p_action中来调用,我们看看如何实现
在itcast_p2p_action中引用itcast_p2p_cache模块,修改child2的pom.xml文件即可
在itcast_p2p_action中添加index.jsp页面,在该页面中调用child1模块中的方法,内容如下
修改itcast_p2p_action的pom.xml文件,使之在构建时生成war文件,child1的不用修改(默认生成jar文件)
做好这一切之后,在IDEA的右侧边栏找到Maven Project 点开,找到parent项目,点开LifeCycle,双击package,如下
项目构建成功之后,在itcast_p2p_action的目录下生成了一个target目录,该目录下有一个war文件,这就是我们要运行的war文件
项目运行
运行结果如下
创建parent项目
1.打开IDEA,注意这里不要勾选模板,用模板创建过maven项目的小伙伴都知道模板创建项目非常慢,所以这里不要选模板,需要的文件夹我们后面自己来创建就可以了。所以这个页面直接点击下一步。
如此之后我们的parent就算创建好了,parent创建好之后,接下来创建子模块
选中parent项目,右键单击new->Module
这里继续不选择模板,直接点击下一步:
对比pom文件
itcast_p2p_action为web项目,我们看看如何将child2改造为一个web项目
再修改web.xml文件的路径,如下;
项目构建
接下来我们itcast_p2p_cache模块中提供一个方法,然后在itcast_p2p_action中来调用,我们看看如何实现
在itcast_p2p_action中引用itcast_p2p_cache模块,修改child2的pom.xml文件即可
在itcast_p2p_action中添加index.jsp页面,在该页面中调用child1模块中的方法,内容如下
修改itcast_p2p_action的pom.xml文件,使之在构建时生成war文件,child1的不用修改(默认生成jar文件)
做好这一切之后,在IDEA的右侧边栏找到Maven Project 点开,找到parent项目,点开LifeCycle,双击package,如下
项目构建成功之后,在itcast_p2p_action的目录下生成了一个target目录,该目录下有一个war文件,这就是我们要运行的war文件
项目运行
运行结果如下
创建parent项目
1.打开IDEA,注意这里不要勾选模板,用模板创建过maven项目的小伙伴都知道模板创建项目非常慢,所以这里不要选模板,需要的文件夹我们后面自己来创建就可以了。所以这个页面直接点击下一步。
如此之后我们的parent就算创建好了,parent创建好之后,接下来创建子模块
选中parent项目,右键单击new->Module
这里继续不选择模板,直接点击下一步:
对比pom文件
itcast_p2p_action为web项目,我们看看如何将child2改造为一个web项目
再修改web.xml文件的路径,如下;
项目构建
接下来我们itcast_p2p_cache模块中提供一个方法,然后在itcast_p2p_action中来调用,我们看看如何实现
在itcast_p2p_action中引用itcast_p2p_cache模块,修改child2的pom.xml文件即可
在itcast_p2p_action中添加index.jsp页面,在该页面中调用child1模块中的方法,内容如下
修改itcast_p2p_action的pom.xml文件,使之在构建时生成war文件,child1的不用修改(默认生成jar文件)
做好这一切之后,在IDEA的右侧边栏找到Maven Project 点开,找到parent项目,点开LifeCycle,双击package,如下
项目构建成功之后,在itcast_p2p_action的目录下生成了一个target目录,该目录下有一个war文件,这就是我们要运行的war文件
项目运行
运行结果如下