IDEA 如何导入别人的javaweb项目进行部署

您所在的位置:网站首页 java导入包的方法 IDEA 如何导入别人的javaweb项目进行部署

IDEA 如何导入别人的javaweb项目进行部署

2023-03-23 21:08| 来源: 网络整理| 查看: 265

目录前言准备工作IDEAtomcatjdkjavaweb结构配置JavaWeb项目配置tomcat打包为War包遇到问题处理缺失jar依赖未找到jar对应方法项目实际启动结果结语前言我主要是进行jav...

目录前言准备工作IDEAtomcatjdkJavaweb结构配置JavaWeb项目配置tomcat打包为War包遇到问题处理缺失jar依赖未找到jar对应方法项目实际启动结果结语

前言

我主要是进行java的springboot项目和vue项目的开发,但是架不住在这些框架兴起之前,公司内部已经是有其他的老的框架,我需要在这些老的框架进行修改和调整代码。原本我是使用的eclipse软件进行部署,也比较简单;

但是我遇到了一个怎么也解决不了的问题,没有报任何错误,但是tomcat怎么也启动不起来。总是报encountered problem这样的提示问题。

我不部署任何项目,直接启动本机的tomcat,是能够直接跳转访问到tomcat的管理界面,但是在eclipse一直启动不起来;我搜索的几乎所有的结果,都是说它eclipse配置tomcat会进行重定向,需要把eclipse配置的tomcat的server.XML里的标签的内容注释掉或删除掉,才能够不会报错。

但是这边又有一个问题,删除之后确实能够启动tomcat了,我导入的javaweb项目是通过访问index.JSP进行访问项目,发现该配置的都配置了,硬是没有编译成功,没有把主入口编译出来,无法访问到我需要访问的项目。

ps:我有在第一次配置成功,可以访问,但是项目出现问题;第二次配置的时候就出现上面的情况

折磨了我很久,于是我打算使用idea进行配置javaweb项目;也折腾了很久,为了以后方便,把我这次使用idea配置javaweb的过程记录下来。

准备工作

IDEA

安装IDEA,这个是就不需要多说了,不过虽然版本一般不会影响配置javaweb,但是防止版本不一致部分操作可能不同,还是发出我使用的IDEA版本我的IDEA版本为: IDEA 2021.1.3

tomcat

首先,你本机一定需要下载一个tomcat,版php本无所谓都是可以的。然后记住你android下载tomcat存放到本机的位置。如我的在D盘

D:\software\tomcat\apache-tomcat-9.0.54

在这里插入图片描述

在这里插入图片描述

jdk

同样,你的本机需要下载安装jdk,这边有一点很重要,配置javaweb,里面的jdk版本一定要跟着javaweb项目来。我的jdk路径同样也是在D盘

D:\software\jdk

在这里插入图片描述

javaweb结构

以下贴出我导入前的javaweb项目结构以我的项目名称:HRMS

在这里插入图片描述

然后进行导入到idea点击 File--->Open

在这里插入图片描述

找到你的本地的javaweb项目,点击OK即可

在这里插入图片描述

然后它提示我是否打开新窗口打开项目,选择是New Window

在这里插入图片描述

导入后的项目结构

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

这些就是我项目中的结构了,但是我们很多文件都不需要看,配置文件你最主要的是需要看WebContent--->WEB-INF文件配置文件你最主要的是需要看WebCjsontent--->WEB-INF文件配置文件你最主要的是需要看WebContent--->WEB-INF文件重要的事情说三遍!!!

此外,还有一个很重要的事情,万一,你的IDEA没有识别出你的javaweb项目的src是java代码需要标注src文件夹为资源文件(即src文件夹不是蓝色)对src文件夹鼠标右键----》Mark Directory as ----》 Rources Root

在这里插入图片描述

配置JavaWeb项目

接下来是重头

project Structure…

点击File ---> project Structure...打开项目配置界面界面为

在这里插入图片描述

project Structure… --> Project

里面的Project界面需要配置两个,一个是Project SDK,一个是Project language levelSDK即jdk, language level即jdk版本导入本机配置好的jdk(这里不额外教学idea配置jdk,详情百度,如果没有的话)选择对应javaweb项目的jdk版本一般大部分javaweb项目版本都是jdk1.8,和我的一样也是OK的

我的为:

在这里插入图片描述

即SDK 1.8 version

language level 8 -Lambdas,type annotations etc.

另外ps:一般情况,Project complier output这里都需要进行配置打包生成位置

project Structure… --> Libraries

可以看到我这边并没有直接配置Modules,而是先Libraries

在这里插入图片描述

这个是java代码需要的依赖包,如果你有写过Maven项目或者说是Springboot项目,和在pom.xml引入依赖的原理是一样的。初始为上图,什么内容都没有,为空;然后我们点击加号+选择java引入

在这里插入图片描述

在我的项目中,只有在webContent--->WEB-INF ---> lib文件夹下才有对应的jar包,所以我只需要引入这个地方的jar包即可。如果你的项目中有别的文件夹也有jar包,需要一并引入

在这里插入图片描述

点击OK,然后会提示

在这里插入图片描述

Library 'lib' will be added to the selected modules意思是是否将引入的这个包引入到modules模块,也就是我跳过的地方引入modules,也意味着,它是会引入到整个项目的配置,我们选中,然后点击OK即可

在这里插入图片描述

project Structure… --> Modules

这个时候我们再回过头看看modules界面抛开刚刚引入的lib剩下的为初始界面

在这里插入图片描述

同样,我们来看看Modules--->Sources

在这里插入图片描述

以及Modules--->Paths

在这里插入图片描述

Sources里代表的是我们整个项目的资源情况Paths 进行配置导包的操作,一般情况下,javaweb导包是会生成war,tomcat进行启动。这里Modules我们什么都不需要操作,只给大家说明作用。

project Structure… --> Facets

Facets初始界面为:

在这里插入图片描述

初始是空白的状态,什么都没有。它的作用就一个:让IDEA知道这个项目是什么项目,知道需要怎么去运行这个项目,配置框架我们这个项目是javaweb项目,自然而然需要配置为web框架点击加号+,选择web

在这里插入图片描述

同样也会提示一个提示

在这里插入图片描述

Web facet will be added to selected module

它的意思是是否将web框架添加到选择的module模块同样我们,选中项目module,选择OK

接下来一步非常重要接下来一步非常重要接下来一步非常重要

在这里插入图片描述

假如你现在点击Apply应用配置的话,你会发现,项目会多出一个文件夹web

在这里插入图片描述

但是只到这里的话,该操作默认给你创建一个新的web项目,而不是将你导入的javaweb项目标记为web项目,所以我们需要更改配置。

将Facets ---> Type选中,点击画笔,修改

在这里插入图片描述

将该配置映射到我们导入的javaweb项目的web.xml

在这里插入图片描述

即选择自己导入项目的WebContent -- > WEB-INF ---> web.xml文件点击OK

在这里插入图片描述

继续点击OK

把Facets --> Web Resource Directory选中,点击画笔,进行修改

在这里插入图片描述

将其选择自己项目中的WebContent 文件夹,点击OK

在这里插入图片描述

继续点击OK

在这里插入图片描述

点击Apply应用即可

这里,它提示'Web' Facet resources are not included in any artifacts也就是进入到我们的下一个配置Artifacts

project Structure… --> Artifacts

打开Artifacts初始为

在这里插入图片描述

也是空白,我们同样点击加号+然后选择Web Application:Exploded --> From Modules

在这里插入图片描述

同样弹窗提示

在这里插入图片描述

提示select modules will be included in the created artifact with all dependencies

意思是是否将选择的模块包含在创建的组件(artifact)中,并包含所有依赖项

我们也是选中module点击OK

在这里插入图片描述

以上我们的javaweb项目的配置都ok了,不要忘记点击Apply进行应用配置!!!不要忘记点击Apply进行应用配置!!!不要忘记点击Apply进行应用配置!!!

还有一个地方很重要,在Artifact的进行配置需要打成war包的各种那么你首先需要在该界面的Type是Web Application Exploded下进行配置排查完错误之后把这里的Type从Web Application Exploded改成Web Application Archive

配置tomcat

接下来我们配置最后一步,配置tomcat

在这里插入图片描述

点击Add Configuration添加配置出现界面如下

在这里插入图片描述

然后我们点击加号+找到tomcat,选择local 本机

在这里插入图片描述

然后界面为:

在这里插入图片描述

一般情况下,你如果没有配置过tomcatApplication server一栏是空的,我们需要点击右边的Configure...进行找到我们下载到本地的tomcat

在这里插入图片描述

找到tomcat目录

在这里插入图片描述

以下截图为配置好之后的tomcat

在这里插入图片描述

这里之后一共需要注意四点

在这里插入图片描述

Application server: 配置本机tomcatURL: 运行项目的主urlHTTP port:运行项目的端口Warning:No artifacts marked for deployment:提示需要将运行项目的artifact进行配置上述我们已经配置完成了,可以点右边的Fix自动添加也可以点Deployment手动添加

在这里插入图片描述

在这里插入图片描述

最后同样也不要忘记Apply应用

大部分项目到这里已经可以直接运行了,点击三角运行即可

在这里插入图片描述

打包为War包

如果你需要将javaweb项目打包,那么你一定需要在配置界面在Artifact的进行配置把这里的Type从Web Application Exploded改成Web Application Archive

在这里插入图片描述

为了防止缓存等问题,在打包前最好清除一下缓存点击Build -- > Build Artifact

在这里插入图片描述

然后点击Clean

在这里插入图片描述

清除完成后,点击Build

在这里插入图片描述

最后在配置的输出路径能够找到自己的war包

在这里插入图片描述

以上大部分的javaweb项目都可以执行成功,如果不行,请确认是否排查完错误,并且按照我的步骤一步步走下来。

当然,我的项目还不行,出来了各种问题,于是下面我来讲一下我的解决过程

遇到问题处理

我遇到的问题不代表全部解决方案,毕竟代码这种东西总会出来各种稀奇古怪的问题。有问题不是我这边总结发的可以评论出来,如果我知道会更新文章出来

缺失jar依赖

这种情况下,就需要引入对应的jar包如果是常用的jar我推荐一个maven库,直接从里面下载jar进行引入,如果我给的maven库没有对应的jar包下载,那么你需要另外找库进行下载

mvnrepository库

除了上述常用的jar包出现之外,我还遇到如下问题

在这里插入图片描述

java: 程序包javax.servlet不存在这个我通过查找百度,实际上是tomcat的依赖jar包,只需要引入本地的tomcat的servlet-api.jar包即可

同样打开Project Structure配置,打开Lbraries界面点击右边已经引入的加号,继续引入

在这里插入图片描述

找到tomcat的依赖包servlet-api.jar,注意我的本地的对应依赖包路径为

D:\software\tomcat\apache-tomcat-9.0.54\lib\servlet-api.jar

在这里插入图片描述

同样不要忘记Apply应用

此外,我还遇到一个

在这里插入图片描述

该jar包同样通过百度查找也是tomcat的依赖,需要引入tomcat的jASPer.jar步骤和上面相同

在这里插入图片描述

未找到jar对应方法

另外,如果遇到引入的jar没有问题,但是对应的方法爆红,那么很大可能是由于jar版本不兼容,这种情况,我通过查找百度得知我遇到的那个jar,高于多少多少版本的对应爆红的方法被删掉了,然后我一看实际引入的对应jar,确实高出了不少版本,然后我把对应的依赖换成低版本就不报错了。

对应如何替换jar,和配置的Libraries界面操作一样!

项目实际启动结果

以下截图为我项目实际配置好之后启动的截图,(只发出一个入口界面)

在这里插入图片描述

结语

以上为我使用IDEA 导入别人的javaweb项目进行部署也走了很多弯路,发出来除了作记录,也帮助需要的人进行配置。再后面如果更新,很大是会在遇到的配置的问题上进行更新,以上。

到此这篇关于IDEA 如何导入别人的javaweb项目进行部署的文章就介绍到这了,更多相关idea导入javaweb项目部署内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3