intellij idea中使用maven创建web项目

                                                            <一>不选择任何maven模板创建web项目

  • Create New Project或者File->New->Project,如图:
  • 点击maven,(不用选择Create from archetype,因为此处讲解不使用maven模板创建web项目),点击next,如图:
  • 填写GroupId和ArtifactId,点击next,如图:
  • 填写项目名称,点击Finish,如图:
  • 此时的目录结构如图所示:可以看到这里只创建了java的文件目录,没有创建web的文件目录。
  • idea会有一个提示,自动引入,点击它:
  • 部署项目,File->Project Structure或点击如图所示的图标:
  • 设置SDK,选择自己电脑上安装的SDK版本。设置Project compiler output,通常选择默认,这里是编译后的文件目录,如图:
  • 点击Modules,可以看到这里没有任何模板服务,在这里创建一个web服务,点击+,选择web
  • 设置webapp。双击Web Resource Directory,在弹出的窗口路径中选择src\main,然后在后面添加\webapp,点击ok。如图:
  • 给web文件目录设置web.xml,如图:
  • 设置好后点击应用:
  • 添加tomcat依赖,如图所示:
  • 在弹出的窗口中选择tomcat,点击添加,如图所示:
  • 点击Artifacts,这里设置当前项目发布信息。点击+,选择From Modules...在弹出的窗口中点击ok,
  • 如图所示,点击应用
  • 当前目录如图所示,多了webapp:
  • 设置tomcat:点击如图所示图标:
  • 点击+,选择Tomcat Server ->Local.如图:
  • 如图所示,第一次进入会隐藏热部署设置,需要下次进来设置。
  • 选择Deployment->+->Artifact.如图;
  • 如图所示,这里我使用默认:
  • 现在反回Server,如图在On frame deactivation中选择Update classes and resources;设置热部署
  • 点击应用或,ok。
  • 在webapp下面新建index.jsp页面,如图;
  • 在web.xml中添加欢迎节点,如图:
  • 启动程序,如图所示;
  • 成功后,浏览器输出hello Word,如图:
  • ok,到这里,web项目设置完成。最终目录结构如图:       
  •      (二)选中maven中web模板创建文项目
  • Create New Project或者File->New->Project,如图:
  • 勾上Create frome archetype,选择maven-archetype-webapp模板,点击下一步,如图:
  • 填写GroupId和ArtifactId,如图所示:
  • 选择中央仓库的地址,点击+,添加一个Add Maven Property属性,

    这里在Properties中添加一个参数archetypeCatalog=internal,不加这个参数,在maven生成骨架的时候将会非常慢,有时候会直接卡住。

    来自网上的解释:archetypeCatalog表示插件使用的archetype元数据,不加这个参数时默认为remote,local,即中央仓库archetype元数据,由于中央仓库的archetype太多了,所以导致很慢,指定internal来表示仅使用内部元数据。如图:

  • 填写项目名称,点击finish,如图所示:

  • idea为我们创建好的目录结构如图所示:少java文件:

  • 启动java web,打开project  structure,如图所示:

  • 选择Project,Project SDK是java jdk安装选择,Project language level是选择语言版本,Project compileroutput 是编译后的文件目录,这里我们的使用默认,你也可以根据需要填写。如图

  • 选择Facets,点击+,选择web,如图所示:

  • 在弹出的窗口中选择项目,点击ok,如图所示;

  • 设置web.xml文件目录,按如图所示的步骤选择,如图所示:

  • 选择Web Resource 目录,按如图所示的步骤选择,如图:

  • 选择Artifacts,点击+,选择Frome Madules....,在弹出的窗口中选择ok,点击Apply。如图所示:

  • 添加java文件目录,因为maven模板创建的web项目中少java文件目录,所以要自己创建,回到Module->选择项目名->Sources->main右击->New Folder...,在弹出的文件夹中填写java点击ok如图所示:

  • 将刚才新建的普通java文件夹变为Sources文件夹,点击Apply,再点击ok。如图所示步骤:

  • 当集成项目,项目中引入jar包时,启动项目如果报下面的错误,表明找不到jar包,我们要手动建立lib来放jar包。

  • 03-Dec-2016 09:37:44.044 SEVERE [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.StandardContext.listenerStart Error configuring application listener of class org.springframework.web.context.ContextLoaderListener
     java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
    	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1285)
    	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1119)
    	at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:520)
    	at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:501)
    	at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:118)
    	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4649)
    	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5189)
    	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:724)
    	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:700)
    	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
    	at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1702)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
    	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
    	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
    	at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:482)
    	at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:431)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
    	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
    	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
    	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1468)
    	at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76)
    	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1309)
    	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1401)
    	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:829)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:324)
    	at sun.rmi.transport.Transport$1.run(Transport.java:200)
    	at sun.rmi.transport.Transport$1.run(Transport.java:197)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
    	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
    	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
    	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:683)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    	at java.lang.Thread.run(Thread.java:745)
    
    03-Dec-2016 09:37:44.045 SEVERE [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.StandardContext.listenerStart Skipped installing application listeners due to previous error(s)

    手动新建lib:

  • 在WEB-INF下面新建一个lib目录,如图;

  • 根据如图所示的步骤找到刚才所建立的lib目录,如图:

  • 找到lib后在弹出的框中选择Jar Directory点击ok,如图

  • 进入Artifacts,选中右边项目中的jar包,右击选择Put /WEB-INF/lib,ok,如图

  • 打开“Edit Configurations”,如图所示:

  • 按照如图所示步骤进行选择,如图:

  • 选择Deployment->+->Artifact....,点击应用,如图所示:

  • 进行热部署,选择server->On frame deactiveation中选择->Update classes and resources,点击应用,点击ok。如图:

  • 点击启动程序,如图所示,web项目搭建成功:

  • 最终的目录结构如图所示:

转载于:https://my.oschina.net/947/blog/769729

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值