Intellij虽然提供了很多模板可以创建maven web javaee等等各种项目,但是你知道项目从无到有到底怎么来的,各个配置分别是做什么的?现在就来一步步说明。

1、idea打开一个空文件夹: 
依次点击 File–open 打开一个空目录

这时候,项目除了ide配置文件啥都没有

现在创建src目录,用来写java代码,也就是后面web项目中的服务端代码

这时候,ide还不知道src是java代码的目录(classpath).右击src,【Mark Directory As】 【source Root】

这时候,到项目的 projectStructore 可以看到ide已经将src标记为了源代码目录(source Root)

这时候,项目已经从一个空项目变成了普通的java项目,已经可以在src里面写java代码了。接下来我们要把它改造成web项目。

依次创建webapp目录、WEB-INF目录和web.xml文件(我们这里还用标准的web.xml,暂不考虑servlet3.0提供的注解方式加载web项目)

同样的,这时候ide还不知道webapp和web.xml是web项目的配置文件和资源目录,我们需要修改配置让ide知道。 
还是在ProjectStructure里面:

刚刚添加的web.Xml已经被ide找到了,他推荐你把这个加入为web模块:

修改web.xml和webapp相关配置,让ide知道web.xml是web入口,并且指定webapp为web项目的根目录(ROOT PATH)

现在webapp目录和web.xml已经有了一个小地球图标,表示这个目录已经被识别为web项目了。 
接下来把tomcat下面任意一个web.xml的内容拷贝过来,删掉主体内容,就可以为我们项目创建一个干净的web.xml了

Maven项目和普通web项目类似,只不过maven项目约定了 
src/main/java src/main/resource src/main/webapp test/java test/resource这些目录,但其中只有src/main/java src/main/webapp这两个是主要的,类似于上面的src 和webapp,做法一样是右击之后选择 【mark as】

普通web项目中,在webapp/WEB-INF下面还会有 个lib目录,用来存放项目用到的所有jar包,它们也是属于classpath的部分,下面说的就是把lib目录设置为项目classpath。 
最简单的方法是对lib目录或者jar右击,选择【add as library】

这些jar都是打包过的class文件,所以这里选择Classes

一般项目就设置为项目library就好,如果是一些通用的像spring,多个项目都会用到,那可以考虑设置为Global Library,如果只是某个模块用到,那就设置为module Library

另:maven项目的依赖是由maven统一管理的,这里就不说lib的设置。

Intellij从无到有创建项目的更多相关文章

  1. IntelliJ IDEA创建项目技巧(转)

    转自:http://www.myext.cn/webkf/a_2539.html IntelliJ IDEA创建项目技巧 来源:网络    编辑:admin intellij idea教程 首先我要说 ...

  2. IntelliJ IDEA 创建项目project和module的关系

    使用基于IntelliJ的IDE,如phpstorm.android studio都会对project和module的关系比较糊涂.用简单的一句话来概括是:IntelliJ系中的Project相当于E ...

  3. Intellij IDEA创建项目

    问题:无Java文件 解决方案: 打开file下面的project structure,在main目录下新建java文件,并将java文件设置为 Sources属性 问题:无resouces 解决方案 ...

  4. idea创建项目

    选项详解如下: Create New Project:创建一个新的工程.Import Project:导入一个现有的工程.Open:打开一个已有工程.比如:可以打开 Eclipse 项目.Check ...

  5. Intellij IDEA 的使用(创建项目、导入项目、同时部署多个项目、JRebel)等常见eclipse、myeclipse换idea必看

    第一篇:Intellij IDEA 的使用 1.黑色主题 中文乱码修改 2.WEB项目的部署 以及自动编译 3.多项目的同时部署 4.相关插件提高工作效率 1.JRebel插件 实现热部署 2.Tas ...

  6. 修改Intellij Idea 创建maven项目默认Java编译版本

    在使用Intellij Idea 创建Maven项目时,默认的Java Language是1.5,虽然可以在Project Structrue中修改,但是每次pom.xml文件有变化时,工程又会重置到 ...

  7. intellij安装 配置 创建项目

    使用intellij创建项目的整个过程如下: 首先,点击intllij的.exe文件,如果是第一次安装,选择第二个选项即可 Intellij需要license key,可以使用注册机生成相应的name ...

  8. IntelliJ IDEA创建web项目及异常问题解决

    IDEA配置Tomcat: 1.下载Tomcat,本次使用的是apache-tomcat-6.0.43 2.IDEA配置Tomcat 在idea中的Settings(Ctrl+Alt+s)(或者点击图 ...

  9. Intellij Idea 创建Web项目入门(一)转

    Intellij Idea 创建Web项目入门(一) 相关软件: Intellij Idea14:http://pan.baidu.com/s/1nu16VyD JDK7:http://pan.bai ...

随机推荐

  1. python入门:py2.x里面除法或乘法这么写就可以计算小数点后面结果

    #!/usr/bin/env python # -*- coding:utf-8 -*- #py2.x里面除法或乘法这么写就可以计算小数点后面结果,更精确future(未来,译音:非忧车) divis ...

  2. 《linux设备驱动开发详解》笔记——7并发控制

    linux中并发无处不在,底层驱动需要考虑. 7.1 并发与竞争 7.1.1 概念 并发:Concurrency,多个执行单元同时.并行执行 竞争:Race Condistions,并发的执行单元对共 ...

  3. leetcode-18-remove

    283. Move Zeroes 解题思路: 从nums[0]开始,如果是零就和它后面的第一个非零数交换,不是零就下一位.不贴代码了,比较简单. 27. Remove Element 解题思路: 这道 ...

  4. Letters CodeForces - 978C (二分)

    Time limit4000 ms Memory limit262144 kB There are nn dormitories in Berland State University, they a ...

  5. Java基础之封装

    封装(Encapsulation)是java面向对象的三大特性,之前学java迷迷糊糊,一直也没弄清楚什么是封装以及为什么要封装,直到这次看书才有一种被点醒的感觉. java中的封装是针对某个类而言的 ...

  6. An entity cannot be annotated with both @Entity and @MappedSuperclass: com.example1.demo1.Entity.User错误

    项目问SpringDataJpa项目,在运行的过程中出现的以下错误: Caused by: org.hibernate.AnnotationException: An entity cannot be ...

  7. mysql 对时间的处理

    引自: @author:http://www.cnblogs.com/geaozhang/ 可能的需求: 当前时间是多少.下个月的今天是星期几.统计截止到当前日期前 3 天的收入总和…… 上述需求就需 ...

  8. 程序员是天生的软件UI设计师

    一个软件项目,谁才是软件开发的主体,是软件UI设计师?还是程序员? 这还用问吗?当然是程序员拉.引用以下alienbat知友的一段评论:对于软件开发而言,码农的工作是必需的.设计师的工作是可选的. 举 ...

  9. GUI——AWT框架和容器,创建简单窗体

    GUI概述:GUI(Graphical User Interface)—图形化用户界面.用户和程序之间可以通过GUI能方便友好地进行交互,在Java语言中,JFC(Java Foundation Cl ...

  10. bzoj 1572: [Usaco2009 Open]工作安排Job

    Description Farmer John 有太多的工作要做啊!!!!!!!!为了让农场高效运转,他必须靠他的工作赚钱,每项工作花一个单位时间. 他的工作日从0时刻开始,有1000000000个单 ...